아래의 dependency 추가 후 class 생성
package com.web;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.ApplicationArguments;
import org.springframework.boot.ApplicationRunner;
import org.springframework.stereotype.Service;
import com.web.jdbc.util.JDBCConnecttionManager;
@Service
public class ConnectionRunner implements ApplicationRunner{
@Autowired
private JDBCConnecttionManager connecttionManager;
@Override
public void run(ApplicationArguments args) throws Exception {
// TODO Auto-generated method stub
System.out.println("컨넥션 매니저 : " + connecttionManager.toString());
}
}
Spring Boot Starters 사용
- 스타터는 필요한 라이브러리들을 관련된 것띠리 묶어서 마치 팩키지처럼 제공
따라서 프로젝트에 사용하고 싶은 모듈이 있으면 그 모듈에 해당하는 스타터만
의존성 추가하면 됨
P04_board-spring-boot-starter
y enter
버전관리 자동화
<dependencyManagement>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-dependencies</artifactId>
<version>2.3.3.RELEASE</version>
<type>pom</type>
<scope>import</scope>
</dependency>
</dependencies>
</dependencyManagement>
package com.web.jdbc.util;
import java.sql.Connection;
import java.sql.DriverManager;
public class JDBCConnecttionManager {
private String driverClass;
private String url;
private String username;
private String password;
public void setDriverClass(String driverClass) {
this.driverClass = driverClass;
}
public void setUrl(String url) {
this.url = url;
}
public void setUsername(String username) {
this.username = username;
}
public void setPassword(String password) {
this.password = password;
}
public Connection getConnection() {
try {
Class.forName(driverClass);
return DriverManager.getConnection(url, username, password);
} catch (Exception e) {
e.printStackTrace();
}
return null;
}
@Override
public String toString() {
return "JDBCConnecttionManager [driverClass=" + driverClass + ", url=" + url + ", username=" + username
+ ", password=" + password + "]";
}
}
package com.web.jdbc.config;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import com.web.jdbc.util.JDBCConnecttionManager;
@Configuration
public class BoardAutoConfiguration {
@Bean
public JDBCConnecttionManager getjdbConnecttionManager() {
JDBCConnecttionManager manager = new JDBCConnecttionManager();
manager.setDriverClass("oracle.jdbc.OracleDriver");
manager.setUrl("jdbc:oracle:thin:@localhost:1521:xe");
manager.setUsername("dbtest");
manager.setPassword("a1234");
return manager;
}
}
해당 프로젝트 내 src/main/ 에 resources 폴더 추가
그 안에 META-INF 폴더 추가
org.springframework.boot.autoconfigure.EnableAutoConfiguration=\
com.web.jdbc.config.BoardAutoConfiguration
추가 후 properties 확인후 Maven clean > install
target 폴더에 P04_board-spring-boot-starter-0.0.1-SNAPSHOT.jar 생김
<groupId>com.web</groupId>
<artifactId>P04_board-spring-boot-starter</artifactId>
<version>0.0.1-SNAPSHOT</version>
복사 후
Maven Dependencies 확인 해 보면 가장 아래에 P04가 추가되어 있는 것을 확인 가능