토비의 스프링 읽다가 Spring과 MySQL을 jdbc로 연결하는 부분이 있어서 연결해보는 김에 정리해 보는 글.
Spring boot 설정
Spring boot 설정 정보
- 빌드 관리 도구 : Gradle
- Spring boot 버전 : 2.7.9
- Java 버전 : 11
위 정보를 바탕으로 Spring Initializr에서 초기화
MySQL 설치
brew install mysql
접속 확인 (유저 설정을 따로 해 놓지 않았기에 우선 root로 접속)
# MySQL 서버 실행
mysql.server start
# MySQL 접속
mysql -u root
# Database 확인
SHOW DATABASES;
MySQL은 기본적으로 3306 port를 사용하지만(MySQL 8.0부터는 33060도 사용. 관련 링크) 혹시 모르니 포트번호도 확인해 준다.
lsof -i -P | grep mysql
Spring boot에서 연결
build.gradle dependency 추가
dependencies {
// jdbc 드라이버와 mysql을 사용하기 위함
implementation 'org.springframework:spring-jdbc:5.3.9'
implementation 'mysql:mysql-connector-java:8.0.26'
}
applicationContext.xml로 설정 (책과 동일함. 편한 방법으로 해도 될 듯)
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd">
<bean id="dataSource" class="org.springframework.jdbc.datasource.SimpleDriverDataSource">
<property name="driverClass" value="com.mysql.cj.jdbc.Driver"/>
<property name="url" value="jdbc:mysql://localhost:3306/springbook"/>
<property name="username" value="root"/>
</bean>
<bean id="userDao" class="com.example.demo.dao.UserDao">
<property name="dataSource" ref="dataSource"/>
</bean>
</beans>