분류 전체보기 (32) 썸네일형 리스트형 직렬화(Serialization)와 역직렬화(Deserialization) 직렬화 : 객체를 바이트 스트림으로 변환 . 역직렬화 : 직렬화된 데이터를 해석해서 객체 형태로 만듬. 현재 실행중인 서버의 메모리에 저장되어있는 { name: "직렬화" , id:12345 } 이 객체를 하드디스크에 저장하고 싶으면 어떻게 해야 할까? ( 직렬화 ) 저장해둔 객체를 다시 서버가 꺼내와서 똑같은 객체로 변환시키고 싶으면 어떻게 해야 할까? ( 역 직렬화 ) 위 객체를 " {name: '직렬화' , id : 12345 } " 이렇게 하나의 문자열로 변환시켜서 파일에 저장해두고 나중에 해당 파일을 읽어와서 문자열을 파싱해 객체로 변환하는 방법도 있을것이고 [객체 프로퍼티 플래그 (ex 222) , 아스키코드("n") , 아스키코드("a") , .... , 객체 값 플래그 , 객체 값 ...... 개발 코드랑 결과물 보는 사이트 https://codepen.io/ CodePen An online code editor, learning environment, and community for front-end web development using HTML, CSS and JavaScript code snippets, projects, and web applications. codepen.io 가벼운 프로젝트 결과물과 코드를 볼 수 있을 뿐만 아니라 내가 직접 작성해 볼 수도 있음 https://github.com/ [배경색] 흰색 말고 다른 색을 사용하려면 용기가 필요하다 이전에 배경색에 개성있게 연한 하늘색으로 개발하다가 심심풀이로 흰색으로 바꿔보았는데 흰색이 컨텐츠를 확 살려 보이고 고급져 보이게 만들었다. 이전 연한 하늘색이 엄청 촌스러워 느껴지고 질려보이게 느껴질 지경;; 대부분 사이트에서 배경색으로 흰 색을 쓰는 이유를 그 때 확실히 알았다. [시각적 요소 - 구분선] 구분선은 있으면 촌스러울때도 있고 좋을때도 있고 컨텐츠를 나열 할 때 구분선을 많이 사용하는데 어떤 경우에는 촌스러워 보인다. 촌스러워 보일 때 이유 분석해보니 굳이 구분선이 없어도 육안으로 구분되는데 과하게 구분선을 추가로 넣어서 도리어 눈에 거슬리게 보이게 되는데 보통 이렇게 느끼는 경우 대다수가 컨텐츠에 비해 구분선이 지나치게 길 때 발생 한다. 여러 웹사이트들을 둘러본 결과 구분선은 이럴때는 사용하고 이럴때는 없어도 되는것 같다. 구분하려는 대상의 width가 평균적으로 짧을때 = 구분선을 사용 하지 말고 컨텐츠간 여유거리를 적당히 두게함. 구분하려는 대상의 width가 평균적으로 길때 = 구분선 사용 [JPA Entity 칼럼] Primary Key 칼럼 생성 - PK = @Id + @Column - 시퀀스 자동증가 PK = @Id + @Column + @GeneratedValue(strategy=GenerationType.IDENTITY) @Table(name="user_like") @Entity public class UserLike { @Id @Column(name="user_like_id") @GeneratedValue(strategy=GenerationType.IDENTITY) private Long userLikeId; } 실제 DB의 user_like 테이블 에서 user_like_id 칼럼은 UserLike 엔티티 에서 userLikeId와 대응됨. 데이터 타입: Long [JPA] DB (Table) = 스프링 (Entity) = @Entity + @Table + 클래스 @Table(name="user_story") @Entity public class UserStory { // 해당 엔티티(테이블)의 칼럼을 정의 } 엔티티 이름: UserStory 데이터베이스에서 위 엔티티랑 맵핑되는 테이블 이름 = user_story [프로젝트 적용] hibernate + Spring data jpa + postgresql build.gradle 에 의존성 추가 dependencies { //Spring data jpa implementation 'org.springframework.boot:spring-boot-starter-data-jpa' //postgresql runtimeOnly 'org.postgresql:postgresql' } application.properties 설정 #SET database (postgresql) spring.datasource.driverClassName=org.postgresql.Driver spring.datasource.url=jdbc:postgresql:도메인주소:포트번호/db # ex) spring.datasource.url= jdbc:postgresql://localhost.. [프로젝트 적용] Hibernate + Spring Data JPA 조합으로 ORM을 이용 JPA 구현체로는 Hibernate 라이브러리를 사용하고 Spring Data JPA를 통해 JPA를 더 쉽게 다룰 수 있도록 해서 이 둘의 조합으로 스프링 프로젝트에서 ORM을 활용 프로젝트에 적용 build.gradle에 아래와 같이 의존성을 추가하면됨. dependencies { // JPA implementation 'org.springframework.boot:spring-boot-starter-data-jpa' } 위 패키지를 설치하면 JPA 구현체 Hibernate도 같이 설치됨. 이전 1 2 3 4 다음