Install/API Install

74. [JAVA] Spring Boot JPA 사용 설정 및 IntelliJ 설정 가이드

천재단미 2025. 1. 14. 12:37
728x90
반응형

 

 

 

 

 

1. Spring Boot 프로젝트 생성 및 JPA 설정

 

1) Spring Initializer를 사용하여 프로젝트 생성

  • 프로젝트 타입: Maven 프로젝트.
  • 의존성 선택:
    • Spring Web: REST API 개발을 위한 필수 의존성.
    • Spring Data JPA: 데이터베이스와 상호작용을 위한 JPA 라이브러리.
    • MySQL Driver: MySQL 데이터베이스 연동.
    • Lombok: Getter/Setter와 같은 보일러플레이트 코드를 줄이기 위한 라이브러리.

 

  • Java 버전: 17 이상.
  • 기존의 JDBC가 아닌 JPA 디펜선시스 설치 

 

2) Github 클론 진행


MySQL 데이터베이스와 연동하기 위한 설정 추가:

2. IntelliJ에서 추가 설정

 

 

1) 프로젝트 열기(메이븐 pom.xml에 추가)

 

JWT 라이브러리 코드(메이븐 pom.xml에 추가)

 

 

<!-- JWT -->
		<dependency>
			<groupId>io.jsonwebtoken</groupId>
			<artifactId>jjwt-api</artifactId>
			<version>0.12.5</version>
		</dependency>
		<dependency>
			<groupId>io.jsonwebtoken</groupId>
			<artifactId>jjwt-impl</artifactId>
			<version>0.12.5</version>
			<scope>runtime</scope>
		</dependency>
		<dependency>
			<groupId>io.jsonwebtoken</groupId>
			<artifactId>jjwt-jackson</artifactId>
			<version>0.12.5</version>
			<scope>runtime</scope>
		</dependency>

 

 

	<!-- AWS SDK -->
	<dependencyManagement>
		<dependencies>
			<dependency>
				<groupId>software.amazon.awssdk</groupId>
				<artifactId>bom</artifactId>
				<version>2.25.60</version>
				<type>pom</type>
				<scope>import</scope>
			</dependency>
		</dependencies>
	</dependencyManagement>
	<!-- AWS SDK -->
	<dependencies>
		<!-- AWS S3 -->
		<dependency>
			<groupId>software.amazon.awssdk</groupId>
			<artifactId>s3</artifactId>
		</dependency>
		<!-- AWS S3 -->

2) application.yml 파일 설정

GitHub에서 프로젝트를 클론한 뒤 IntelliJ에서 pom.xml을 열어 의존성을 로드.

spring:
  profiles:
    active: dev

jwt:
  secret: 토큰발행시 사용할 임의의 시크릿 코드 


cloud:
  aws:
    credentials:
      access-key: accesskey
      secret-key: secretkey
    s3:
      bucket: 포켓name
      region: ap-northeast-2

 

aws

  aws:
    credentials:                           // im 에서 생성 
      access-key: accesskey         
      secret-key: secretkey
    s3:                                        // s3 에서 포켓 생성 
      bucket: 포켓name
      region: ap-northeast-2

 

 

 

환경별 설정: application-dev.yml, application-prod.yml 등으로 개발 환경과 운영 환경을 분리.

 

 

application-dev.yml

spring:
  datasource:
    url: jdbc:mysql://localhost:3307/DB 명
    username: admin
    password: 비밀번호
  jpa:
    show-sql: true
    hibernate:
      ddl-auto: update
    properties:
      hibernate:
        format_sql: true
        jdbc:
          time_zone: UTC

 

application-prod.yml

spring:
  datasource:
    url: jdbc:mysql://AWS 엔드포인트 :3306/ DB 명
    username: admin
    password: 비밀번호
  jpa:
    show-sql: true
    hibernate:
      ddl-auto: update
    properties:
      hibernate:
        format_sql: true
        jdbc:
          time_zone: UTC



server:
  port: 80

 

 

3) Lombok 활성화

Lombok 플러그인 설치 후 IntelliJ에서 아래와 같이 설정:

Settings > Build, Execution, Deployment > Compiler > Annotation Processors > Enable annotation processing 체크.

 

3. 팁

  • 환경별 설정:
    • 개발(application-dev.yml)과 운영(application-prod.yml) 설정 파일을 분리하여 관리하세요.
    • 예: 운영 환경에서는 Hibernate의 ddl-auto 옵션을 validate 또는 none으로 설정.
  • IntelliJ Lombok 설정:
    • Lombok 설정이 누락되면 Getter/Setter와 같은 코드가 정상적으로 생성되지 않으니 반드시 확인하세요.
  • AWS RDS 보안 그룹:
    • AWS RDS에 접근하려면 보안 그룹에서 애플리케이션 서버의 IP 주소를 허용해야 합니다.
728x90
반응형
home top bottom
}