[Spring Boot] 스프링 부트로 회원 관리하기 (7) 회원가입 DB 연동하기 2
안녕하세요, 이번 글에서도 스프링 부트 프로젝트에서 회원가입 페이지와 DB 연동하는 법을 다룹니다.
이전 글에서 이어지므로 링크를 참고해 주세요.
이전 글: [Spring Boot] 스프링 부트로 회원 관리하기 (6) 회원가입 DB 연동하기 1
[Spring Boot] 스프링 부트로 회원 관리하기 (6) 회원가입 DB 연동하기
안녕하세요, 이번 글에서는 스프링 부트 프로젝트에서 회원가입 페이지와 DB 연동하는 법을 다룹니다. 스프링 부트 프로젝트에서 회원가입 페이지를 요청하는 법은 이전 글을 참고해 주세요.
mnoqc.tistory.com
1. MemberService.java에 레포지토리 추가하기
MemberService 클래스에 멤버 레포지토리 의존성을 추가해 줍니다.
아직 해당 파일을 만들지 않았기 때문에 경고가 뜹니다.
MemberService.java
@Service
@RequiredArgsConstructor
public class MemberService {
private final MemberRepository memberRepository;
/.../
2. yml 파일에 jpa 설정 추가하기
application.yml 파일을 열어 jpa 관련 설정을 추가해 줍니다.
application.yml
# spring data jpa 설정
jpa:
database-platform: org.hibernate.dialect.MySQL5InnoDBDialect
open-in-view: false
show-sql: true
hibernate:
ddl-auto: update
3. MemberRepository.java 생성하기
MemberRepository 파일을 생성해 줍니다.
자바 클래스가 아닌 인터페이스 파일로 만들어 줍니다.
MemberRepository 인터페이스에 JpaRepository를 상속받습니다.
JpaRepository는 기본적인 CRUD(Create, Read, Update, Delete) 메서드를 제공하는 인터페이스입니다.
이때도 MemberEntity를 아직 만들지 않았기 때문에 빨간색으로 표시될 것입니다.
MemberRepository.java
package com.mnoqc.member.repository;
import com.mnoqc.member.entity.MemberEntity;
import org.springframework.data.jpa.repository.JpaRepository;
public interface MemberRepository extends JpaRepository<MemberEntity, Long> {
}
6. MemberEntity.java 생성하기
src > main > java > com.mnoqc.member > entity 패키지 경로에
MemberEntity.java 클래스 파일을 만들어 줍니다.
회원 정보를 담을 엔티티 코드를 작성해 줍니다.
JPA의 엔티티로서 @Entity 어노테이션을 사용하여 테이블과 매핑됩니다.
MemberEntity.java
package com.mnoqc.member.entity;
import jakarta.persistence.*;
import lombok.Getter;
import lombok.Setter;
@Entity
@Getter
@Setter
@Table(name = "member_table")
public class MemberEntity {
@Id // PK 지정
@GeneratedValue(strategy = GenerationType.IDENTITY) // auto_increment
private Long id;
@Column(unique = true) // unique 제약 조건 추가
private String memberEmail;
@Column
private String memberPassword;
@Column
private String memberName;
}
7. MemberApplication 실행하고 확인하기
MemberApplication 을 실행한 뒤,
DB에 새로운 테이블과 ID, 컬럼들이 잘 추가되었나 확인해 주어야 합니다.
그러나 아무것도 추가되지 않았습니다.
콘솔창을 확인하여 오류 원인을 찾아내 줍니다.
앞서 이미 해결했던 오류입니다.
여기서부터 혼란이 옵니다.
8. DB 연동 성공 확인하기
결론부터 말하자면 성공했으므로 관련 글을 따로 포스팅하였습니다.
오류에 관련된 새 포스트는 게시글 하단에 링크로 달아두었습니다.
MySQL에서도 스키마가 정상적으로 추가되었는지 확인해 줍니다.
다음 글에서는 회원가입을 완료해 봅니다.
다음 글: [Spring Boot] 스프링 부트로 회원 관리하기 (8) 회원가입 완료하기
[Spring Boot] 스프링 부트로 회원 관리하기 (8) 회원가입 완료하기
안녕하세요, 이번 글에서는 스프링 부트 프로젝트에서 회원가입을 완료해 봅니다. 스프링 부트 프로젝트에서 회원가입 페이지와 DB 연동하는 법은 이전 글을 참고해 주세요. 이전 글: [Spring Bo
mnoqc.tistory.com
TIP. 오류 해결하기
[Spring Boot] Failed to configure a DataSource: 'url' attribute is not specified and no embedded datasource could be configured.
안녕하세요, 이번 글에서는 스프링 부트 프로젝트에서 기본 주소를 요청하는 법을 진행하다 발생한 Failed to configure a DataSource: 'url' attribute is not specified and no embedded datasource could be configured. Rea
mnoqc.tistory.com
위 글에서는 1. application.yml 파일에 데이터베이스 연결 정보를 설정하고,
2. build.gradle 파일을 열어 dependencies 문단에 JDBC 드라이버 의존성을 추가하는 것으로 해결했습니다.
그러나 이후 같은 오류가 발생했으므로, 다른 파일들에서 문제의 원인을 찾았습니다.
위 방법으로도 해결이 되지 않으신 분들께 열람을 권합니다.
[Spring Boot] Failed to configure a DataSource: 'url' attribute is not specified and no embedded datasource could be configured.
안녕하세요, 이번 글에서는 스프링 부트 + Gradle + JPA 프로젝트를 진행하다 발생한 Failed to configure a DataSource: 'url' attribute is not specified and no embedded datasource could be configured. Reason: Failed to determine
mnoqc.tistory.com