공부27 Restful Web Service REST( REpresentational State Transfer )? REST는 웹 표준 기반 아키텍처이며 데이터 통신에 HTTP 프로토콜을 사용 resource를 정의해서 CRUD 인터페이스를 제공.( 그 리소스가 있는 곳에 데이터를 요청 ) REST 아키텍처에서 REST 서버는 단순히 resource에 대한 액세스를 제공하고 REST 클라이언트는 자원에 액세스하고 나타낸다. 각 resource는 URI / 글로벌 ID로 식별된다. REST는 Text, JSON 및 XML과 같이 다양한 형태로 리소스를 나타낸다. ( JSON 가장 많이 사용 ) Client 부분은 Server에서 Json을 파싱해서 뿌려주기 때문에 파싱할 수 있는 것(Json pasor)이 필요하다. 예시 HTTP Method UR.. 2020. 4. 19. Hibernate with Spring ※ Hibernate 적용 전 상식! - Spring MVC 프로젝트 구조 - 각각 패키지 안에 있는 클래스에 쓰는 annotation : @Controller @Repository @ Entity @ Service - 클래스들은 classes 폴더에. war 파일로 패키징 돼서 디플로이 된다. ★ Integrating Hibernate with the Spring Framework 1. Maven Dependencies : Spring - spring-orm , Hibernate - hibernate-core org.springframework spring-orm ${org.springframework-version} org.hibernate hibernate-core 5.2.12.Final 2. Hi.. 2020. 4. 19. Entity Relationships Entity Relationships relationship multiplicities 4가지 종류 @OneToOne @OneToMany @ManyToOne ManyToMany relationship의 방향 bidirectional(양방향): owning side와 inverse side unidirectional(단방향): owning side only ※ owning side란? 레퍼런스를 가지고 있는 부분(side) -> 다른 쪽을 참조하고 있는 Entity Entity Relation Attributes - updates/deletes cascadng 지원 CascadeType ALL, PERSIST, MERGE, REMOVE, REFRESH - 관련 행 패치에 performance strateg.. 2020. 4. 17. Hibernate Data Persistence 객체들을 영구적으로 보관하는 것 Web Application 관점에서는 객체지만 Database에서는 이러한 객체들이 테이블로 관리된다. DB에 데이터를 유지하는 방법 JDBC ORM - 객체와 객체 사이는 의존성이 존재(의존성 주입) 객체지향 언어를 사용하면 그래프 형태로 객체를 관리할 수 있고 Relational database systems에서는 테이블 형태로 관리할 수 있다. 객체지향 언어와 DB를 같이 사용하면 객체 모델과 관계 모델에 불일치가 발생할 수 있다 그 부분을 ORM framework의 Hibernate가 해결해준다.(Framework을 사용하여 불일치를 해결) Mismatch가 발생되는 경우! 객체지향언어에서 클래스가 2개이지만 RDBMS에서는 1개인 .. 2020. 4. 10. Apache Tiles Apache tiles를 사용하는 이유 틀(template)을 만들고 안에 contents를 채워가는 형식 layout을 바꾸고 싶을 때 한 페이지만 바꿔줘도 (template만 바꿔줘도) 다른 페이지 전부 바뀐다. ->일관성 있음 특징 Apache tiles는 MVC technology와 궁합이 잘 맞다. template에 들어갈 각 조각들만 잘 조합하면 된다.(런타임 시 완성되는 페이지) 사용자들이 많은 페이지들이 일관성 있다고 느낀다. Page Template - layout 페이지 위 이미지와 같이 layer에 header menu body footer 속성을 넣어놨다. Tiles Definition xml에 template과 attribute의 경로를 정의 해주면 하나의 페이지가 만들어진다. m.. 2020. 4. 8. Logging (SLF4J and Logback) 디버그의 단점? 앱의 영향을 준다. 오류는 잡을 수 있지만 타이밍 오류는 잡을 수 없다. Logging과 sysout의 차이 - Logging이 더 융통성 있다. 선택한 레벨 이상만 볼 수 있는 기능 전체도 가능하고 특정 모듈 또는 특정 클래스에 대해서 메시지를 출력할 수 있다. 메시지를 어떻게 모맷할지 설정할 수 있다. 메시지를 어디로 보낼 것인지 설정할 수 있다. Logging Frameworks native java.util.logging: 많이 사용 안 함 Log4J: 몇 년 전까지 표준 Logback: Log4J 다음에 나온 제품(같은 개발자가 개발) SLF4J(Simple Logging Facade for Java): Log4J 나 Logback 같은 백앤드 logger framework를 위.. 2020. 4. 1. 이전 1 2 3 4 5 다음