본문 바로가기

Spring16

Spring 타임리프 이용 기본 ✔ 템플릿 엔진 템플릿 엔진 - 지정된 템플릿 양식과 데이터가 합쳐져 HTML 문서를 출력하는 소프트웨어 - 서버 템플릿 엔진 - velocity : 과거 스프링에서 많이 사용하던 엔진. 현재 권장하지 않음 - freemarker : 템플릿 엔진으로 많은 기능을 지원. Apache 템플릿 엔진으로 템플릿 및 변경 데이터를 기반으로 텍스트, 메일, 파일등을 생성하는 Java 라이브러리를 제공 - thymeleaf : 스프링 부트에서 적극 지원하고 있는 엔진. 문법이 쉽지 않음. react, vue의 경험이 있다면 최적의 템플릿 엔진 - mustaches : 문법이 다른 템플릿 엔진보다 쉽다. 비즈니스 로직을 사용할 수 없음. view의 역할과 서버의 역할이 명확하게 구분됨 타임리프(Thymeleaf) 타임.. 2022. 12. 19.
Spring Join ✔ Category Join @Entity // JPA를 사용해서 DB 테이블과 메핑할 클래스를 연결 @NoArgsConstructor // 파라미터가 없는 기본 생성자를 생성 @AllArgsConstructor //모든 필드 값을 파라미터로 받는 생성자를 만들어줌 @Data @Builder // 연속적으로 실행하게 해주는 기능 ex) method.method ...... @ToString(callSuper = true) @EqualsAndHashCode(callSuper = true) @EntityListeners(AuditingEntityListener.class) public class Category extends BaseEntity implements Auditable { // ctrl + sh.. 2022. 12. 13.
Spring (리스너, 연관 관계 메핑, 어노테이션) ✔ 리스너 특징 리스너(특정 이벤트를 받기 위해 대기) 이벤트 종류 //Post - `직 후` Pre = '직 전' 1. PostLoad : 엔티티가 영속성 컨텍스트에 조회된 직후 2. PrePerList : 새로운 인스턴스를 merge할 때 수행. persist() 메소드를 호출해서 엔티티를 영속성 컨텍스트에 관리하기 직전에 호출 3. PreUpdate : flush, commit를 호출해서 엔티티를 데이터베이스에 수정하기 직전에 호출 4. PreRemove : remove 메소드를 호출해서 엔티티를 영속성 컨텍스트에서 삭제하기 직전에 호출 5. PostPersist : flush, commit를 호출해서 엔티티를 데이터베이스에 저장한 직후에 호출 6. PostUpdate : flush, commit를.. 2022. 12. 13.
Spring (Enum, Query Method 기본, Optional, @Bean) ✔ Enum Class 기본 Enum 클래스 - 열거체를 비교할 때 실제 값과 타입까지 체크할 수 있는 클래스 enum 열거체이름 { 값1, 값2, 값3 ... } 열거체이름 변수명; for(int i=0; i{ usersRepository.delete(selectUser); } ); } @Test public void login(){ //userid , hp, email Optional users = usersRepository.findByUseridAndUserpw("apple","2222"); users.ifPresent( selectUser ->{ System.out.println("userid : " +selectUser.getUserid()); System.out.println("hp : " .. 2022. 12. 11.