스프링부트 데이터베이스설정
데이터베이스 설정하기
application.properties 대신에 application.yml을 사용
추가할 dependencies
dependencies { implementation ‘mysql:mysql-connector-java’ implementation ‘org.springframework.boot:spring-boot-starter-data-jpa’ }
- mysql을 사용했으므로 mysql에 맞게 application.yml 수정
spring:
datasource:
url: jdbc:mysql://localhost:3306/테이블이름?serverTimezone=Asia/Seoul
username: root
password: 비밀
driver-class-name: com.mysql.cj.jdbc.Driver
jpa:
hibernate:
# ddl-auto: create # 자동으로 테이블을 만들어줌 애플리케이션 실행시에 다 지우고 다시 실행
properties:
hibernate:
# show_sql: true
format_sql: true
logging:
level:
org.hibernate.SQL: debug
org.hibernate.type: trace # values(?,?)의 ?에 입력되는 로그를 남겨준다.
lombok
lombok은 Getter와 Setter를 만들어주지 않아도 아래와 같은 코드로 간단하게 구현 가능하다.
dependencies{implementation ‘org.projectlombok:lombok’} 추가
@Getter
@Setter
@Entity
public class Member {
@Id
private Long id;
private String username;
}
@Getter @Setter로 getId()나 setId()와 같은 기본 로직들을 자동 생성해준다.
위 와 같이 member테이블이 생성하게 되면 Repository를 만들어서 컨트롤한다.
@Repository // Entity에 의해 생성된 DB에 접근하는 메서드를 사용하기 위한 인터페이스이다.
public class MemberRepository {
@PersistenceContext
private EntityManager em;
public Long save(Member member)
{
em.persist(member);
return member.getId();
}
public Member find(Long id)
{
return em.find(Member.class, id);
}
}
EntityManager를 선언하여 em.persist(member)로 테이블을 등록하고 find와 같은 객체를 통하여 정보를 얻을 수 있다.
Leave a comment