본문 바로가기

Backend

(20)
JSP(Java Server Pages) gmlwjd9405.github.io/2018/11/03/jsp.html
@Entity / @Id / @Column(name = "team_id") 출처 https://ithub.tistory.com/24 오늘은 Spring Data JPA 기본키 매핑하는 방법에 대해서 알아보겠습니다. Spring Data JPA 에서는 엔티티의 기본키를 @Id 어노테이션을 사용하여 설정합니다. @Entity public class Team { @Id @Column(name = "team_id") private Long id; (이하 생략) } 이때, 기본키를 할당하는 방법으로는 두가지가 있습니다. 직접할당 : 기본 키를 어플리케이션에서 직접 할당 해주는 방법 자동생성 : 데이터베이스가 자동으로 할당해주는 방법 (예를들어, 오라클은 sequence, MySQL의 auto_increment) 데이터베이스 벤더마다 sequence, auto_increment 등 기본키..
@ToString 출처 https://www.daleseo.com/lombok-popular-annotations/ ToString 메소드 자동 생성 toString() 메소드를 작성하는 것도 여간 귀찮은 일이 아닙니다. 하지만 Lombok을 사용하면 @ToString 어노테이션만 클래스에 붙여주면 자동으로 생성해줍니다. 예제와 같이 exclude 속성을 사용하면, 특정 필드를 toString() 결과에서 제외시킬 수도 있습니다. @ToString(exclude = "password") public class User { private Long id; private String username; private String password; private int[] scores; } 위와 같이 클래스에 @ToString 어..
@EqualsAndHashCode equals, hashCode 자동 생성 자바 빈을 만들 때 equals와 hashCode 메소드를 자주 오버라이딩 하는데요. @EqualsAndHashCode 어노테이션을 사용하면 자동으로 이 메소드를 생성할 수 있습니다.
JPA / Hibernate / Spring Data JPA 출처: https://suhwan.dev/2019/02/24/jpa-vs-hibernate-vs-spring-data-jpa/ JPA는 기술 명세이다 JPA는 Java Persistence API의 약자로, 자바 어플리케이션에서 관계형 데이터베이스를 사용하는 방식을 정의한 인터페이스이다. 여기서 중요하게 여겨야 할 부분은, JPA는 말 그대로 인터페이스라는 점이다. JPA는 특정 기능을 하는 라이브러리가 아니다. 마치 일반적인 백엔드 API가 클라이언트가 어떻게 서버를 사용해야 하는지를 정의한 것처럼, JPA 역시 자바 어플리케이션에서 관계형 데이터베이스를 어떻게 사용해야 하는지를 정의하는 한 방법일 뿐이다. JPA는 단순히 명세이기 때문에 구현이 없다. JPA를 정의한 javax.persistence ..
Java Json library jackson Jackson 은 자바용 json 라이브러리로 잘 알려져 있지만 Json 뿐만 아니라 XML/YAML/CSV 등 다양한 형식의 데이타를 지원하는 data-processing 툴이다. -스트림 방식이므로 속도가 빠르며 유연하며 다양한 third party 데이타 타입을 지원하며 -annotation 방식으로 메타 데이타를 기술할 수 있으므로 JSON 의 약점중 하나인 문서화와 데이타 validation 문제를 해결할 수 있다.
@RequestBody / @ResponseBody @RequestMapping에서 @RequestBody, @ResponseBody 어노테이션을 사용하면 컨트롤러에서 JSON 데이터를 주고받을 수 있다. @RequestBody 어노테이션은 @RequestMapping에 의해 POST 방식으로 전송된 HTTP 요청 데이터를 지정해준 r값에 맞춰 변환해주는 역할
@GetMapping / @PostMapping Spring 4.3버전 이후로 추가된 @GetMapping, @PostMapping, @DeleteMapping, @PutMapping 및 @PatchMapping 기본적인 작동 원리로는 GET의 HTTP(S) request를 처리하는 @GetMapping, POST의 HTTP(S) request를 처리하는 PostMapping, DELETE의 HTTP(S) request를 처리하는 @DeleteMapping, PATCH와 PUT의 HTTP(S) request를 처리하는 @PutMapping과 @PatchMapping
Spring의 기본이 되는 MVC패턴 / @Controller 와 @Restcontroller Model - 데이터 View - 화면(보이는 부분): HTML Controller - @Controller 혹은 @RestController 어노테이션Annotation이 붙어있으면 자동으로 스프링 프레임웍이 URL 맵핑을 제어하는 제어유닛으로 바라본다. @Controller는 HTML핸들링에 특화되어 있으므로 데이터를 처리하고자 할 경우 ResponseEntity를 활용해야 한다. @RestContoller는 json형식으로 데이터 처리에 특화되어 있으므로 HTML을 처리하고자 할 경우 ModelAndView를 활용해야 한다. 상황에 맞게 HTML을 많이 쓰면 @Controller, 데이터를 많이 처리하면 @RestController를 쓰면 된다.
@Configuration @Configuration 어노테이션을 위에 붙여 설정파일 관련된 것 설정할 때 사용 @Configuration 쓸 때 final이면 안되고 지역변수 만드는 것 안됨 @Configuration public class DBConfig { }