반응형
✅ 1. mysql-connector-j란?
MySQL을 Java 애플리케이션에서 사용하기 위해 필요한 JDBC 드라이버입니다.
- Java에서 Connection, PreparedStatement 등을 사용할 수 있게 해줍니다.
- 공식 Maven artifact 이름: mysql:mysql-connector-java
📦 2. Maven 프로젝트에 의존성 추가
pom.xml에 아래처럼 작성합니다:
<dependencies>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>8.3.0</version> <!-- 최신 버전 확인 필요 -->
</dependency>
</dependencies>
👉 최신 버전은 Maven Central에서 확인 가능
🛠 3. 빌드
Maven으로 빌드 실행:
mvn clean package
이 명령어로 .jar 또는 .war 파일이 생성되며,
해당 아티팩트에 mysql-connector-java가 포함되거나 별도 참조됩니다.
🚀 4. 배포 (방법 2가지)
방법 1. 서버에 .jar 배포 (Spring Boot 기준)
- target/your-app.jar 파일을 WAS나 클라우드 서버에 배포
- mysql-connector-java는 fat jar에 자동 포함됨 (Spring Boot 기준)
scp target/myapp.jar ec2-user@yourserver:/home/ec2-user/
방법 2. Docker 이미지로 빌드 & 배포
FROM eclipse-temurin:17-jdk
COPY target/myapp.jar /app.jar
ENTRYPOINT ["java", "-jar", "/app.jar"]
docker build -t myapp:latest .
docker run -p 8080:8080 myapp:latest
💡 5. JDBC 연결 예시 (application.properties)
spring.datasource.url=jdbc:mysql://your-db-host:3306/yourdb?useSSL=false&characterEncoding=UTF-8
spring.datasource.username=root
spring.datasource.password=yourpassword
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
🔐 6. 보안 팁
항목설명
SSL 연결 권장 | useSSL=true&requireSSL=true 설정 |
비밀번호는 환경변수로 | .env 또는 KMS, Secrets Manager 활용 |
드라이버 버전 최신 유지 | 보안 취약점 대응 위해 항상 최신 사용 권장 |
🔎 참고 정보
항목링크
Maven Central | https://search.maven.org/artifact/mysql/mysql-connector-java |
MySQL Connector/J Docs | https://dev.mysql.com/doc/connector-j/en/ |
Spring JDBC Docs | https://docs.spring.io/spring-boot/docs/current/reference/html/application-properties.html#application-properties.data |
✅ 요약
단계설명
1. pom.xml에 의존성 추가 | mysql-connector-java |
2. mvn clean package로 빌드 | jar 또는 war 생성 |
3. 서버 배포 또는 Docker로 컨테이너화 | 운영 환경 배포 |
4. JDBC 설정 | URL, 사용자 정보 입력 |
5. 보안 적용 | 최신 버전 + SSL + 환경변수로 비밀번호 관리 |
반응형