1️⃣User 엔티티 만들기
⏺️웹에서 사용될 요청을 담을 사용자 엔티티를 만든다.
⏺️이 엔티티는 자바프로그램에서 사용될 객체로 사용자 요청이 클래스로 자동 매핑이 된다.
package shop.mtcoding.blog.user; import jakarta.persistence.*; import lombok.Data; import java.time.LocalDateTime; /* * @Tabled은 현재 객체가 어떤 테이블이랑 연결될 것인지 구체적 정의, * user로 테이블 명을 만들면, 키워드이기 때문에 안만들어 질수 있다. * _tb 컨벤션을 지키도록 하자. */ @Table(name = "user_tb") @Data //getter,setter,toString 생성 @Entity // 현재 클래스가 Entity임을 선언 public class User { @Id // 해당 필드를 PK로 만들어주는 어노테이션 @GeneratedValue(strategy = GenerationType.IDENTITY) // auto_increment기능을 만들어주는 어노테이션 private int id; private String username; private String password; private String email; //여기서 카멜표기법을 지키면 자동으로 JPA가 created_at과 매핑시킨다. private LocalDateTime createdAt; }
invalid source release: 21
에러 해결하기펼쳐보기
아래와 같은 에러가 나온다면 다음과 같이 해결해보자.
⏺️ 왼쪽 최상단 햄버거 클릭
⏺️ File 메뉴 → Project Structure 선택
⏺️ 아래 창이 뜨면 SDK 설정에서
21 java version
선택후 적용유저 엔티티를 만들고 한번 실행해보았지만, 테이블이 생성되었다는 쿼리가 보이지 않는다.
2️⃣ yml설정하기
application.yml 설정을 dev로 바꾼다.
spring: profiles: active: - dev
application-dev.yml 클릭하여 아래와 같이 세팅한다.
server: servlet: encoding: charset: utf-8 force: true session: timeout: 30m port: 8080 spring: mustache: servlet: expose-session-attributes: true expose-request-attributes: true datasource: driver-class-name: org.h2.Driver url: jdbc:h2:mem:test;MODE=MySQL username: sa password: h2: console: enabled: true jpa: hibernate: ddl-auto: create show-sql: true properties: hibernate: format_sql: true
아래와 같이 테이블 쿼리 확인되면 이상없다.
Share article