728x90 Spring24 [JPA] @Column @Column객체 필드를 테이블의 컬럼에 매칭시켜주는 어노테이션 속성속성기능기본값name필드와 매핑할 테이블의 컬럼 이름객체의 필드 이름insertableEntity 저장 시 이 필드도 같이 저장false 설정시 이 필드는 DB에 저장X읽기 전용일 때는 false 사용trueupdatetableEntity 수정 시 이 필드도 같이 수정false 설정 시 DB에 수정X읽기 전용일 때는 false 사용 truetable하나의 Entity를 두 개 이상의 테이블에 매핑할 때 사용(@SecondaryTable 사용)지정한 필드를 다른 테이블에 매핑할 수 있다.현재 클래스가 매핑된 테이블nullable(DDL)DDL 생성 시 null 값의 허용 여부 설정false 설정 시 not null 제약 조건이 붙는다.tr.. 2024. 12. 2. [Spring] @PathVariable @PathVariable • 중괄호 { }로 둘러싸인 값을 경로변수라 한다.• @PathVariable은 경로 변수의 값을 추출하여 매개변수에 할당한다.• 기본적으로 경로 변수는 반드시 값을 가져야 하고, 값이 없는 경우 404 오류가 발생한다. ex) test.com/board/1010을 @PathVariable로 처리할 수 있다. 기본 사용 방법 URL의 {number}와 매개변수 Long number의 이름을 맞춘다.@GetMapping("/board/{number}")public String getTest3(@PathVariable Long number) { return number + "!!!";} 다른 변수명 사용 방법경로 변수 값과 @PathVariable 값을 같은 값으로 하고. 매개.. 2024. 9. 23. [Spring] @NoArgsConstructor, @AllArgsConstructor, @RequiredArgsConstructor @NoArgsConstructor 파라미터가 없는 기본(디폴트) 생성자를 생성@NoArgsConstructorpublic class Member { private String name; private int age;// public Member() {// }} 항상 초기화가 필요한 final이 붙은 필드가 있으면 다음과 같이 IDE에서 알려주거나 compile error 발생 @AllArgsConstructor 모든 필드 값을 파라미터로 받는 생성자를 생성 @AllArgsConstructorpublic class Member { private String name; private int age;// public Member(String name, int age) .. 2024. 9. 20. [Spring] @RequestMapping @RequestMapping클라이언트 요청(url)에 맞는 클래스나 메소드와 매핑하기 위해 사용하는 어노테이션이다. @RequestMapping 속성 value : 요청받을 url 설정(value만 주어질 경우 생략 가능) • @RequestMapping(value="/home") ▶ "/home" 요청@RequestMapping(value = "/home")public String home() { return "home"}• @RequestMapping(value={"/home ", "/index"}) ▶ "/home" 과 "/index" 요청@RequestMapping(value = {"/home", "/index"})public String homeIndex() { return "home.. 2024. 9. 18. [Spring] @Controller, @RestController @Controller• 주로 View를 반환하기 위해 사용Controller가 반환한 뷰의 이름으로부터 View를 렌더링하기 위해 ViewResolver가 사용되고, ViewResolver 설정에 맞게 View를 찾아 렌더링한다. • Data를 반환해야 하는 경우데이터 반환을 위해 @ResponseBody 어노테이션을 활용하여 Controller로 Json 형태로 데이터를 반환할 수 있다.Controller를 통해 객체를 반환할 때 일반적으로 ResponseEntity로 감싸서 반환한다. @RestController @Controller + @ResponseBody 주용도는 Json 형태로 객체 데이터를 반화하는 것REST API 개발할 때 주로 사용하며 객체를 ResponsEntity로 감싸서 반환한다.. 2024. 9. 16. [Spring] @Transactional 안 되는 경우 내부 호출은 프록시를 거치지 않아 트랜잭션 적용이 안 된다.@Transactional을 사용하면 스프링의 트랜잭션 AOP가 적용되며 기본적으로 프록시 방식의 AOP를 사용한다.@Transactional을 적용하면 프록시 객체가 요청을 먼저 받아 트랜잭션을 처리하고, 실제 객체를 호출하는 방식이다.그러므로 트랜잭셕을 적용하려면 항상 프록시를 통해 대상 객체를 호출해야한다.프록시를 거치지 않고 대상 객체를 직접 호출하면 AOP가 적용되지 않고, 트랜잭션도 적용되지 않는다. @Slf4jpublic class TxService { public void noTx() { log.info("noTx"); printTxInfo(); yesTx(); } @Transa.. 2024. 9. 13. 이전 1 2 3 4 다음 728x90