# 포트번호
server.port=9090
server.servlet.context-path=/ROOT
# 소스 변경시 서버 자동으로 구동 가능
spring.devtools.livereload.enabled=true
# view는 프레임워크 thymeleaf
# 추후 vue.js react.js로 연동
spring.thymeleaf.prefix=classpath:/templates/
spring.thymeleaf.suffix=.html
# h2 db(개발용 DB)
spring.datasource.url=jdbc:h2:file:D:/boot_20220328/db01;Mode=Oracle
spring.datasource.driverClassName=org.h2.Driver
spring.datasource.username=sa
spring.datasource.password=
spring.jpa.database-platform=org.hibernate.dialect.H2Dialect
# 오라클에 세션 넣는거. 시간, Oracle, 테이블자동생성
server.servlet.session.timeout=18000
spring.session.store-type=jdbc
spring.session.jdbc.initialize-schema=always
spring.datasource.hikari.connection-test-query=SELECT 1 FROM DUAL
spring.datasource.hikari.connection-timeout=600000
spring.datasource.hikari.maximum-pool-size=500
spring.datasource.hikari.max-lifetime=1800000
spring.datasource.hikari.minimum-idle=20
spring.datasource.hikari.validation-timeout=3000
spring.datasource.hikari.idle-timeout=60000
# 오라클 연동(서비스용 DB)
# spring.datasource.driver-class-name=oracle.jdbc.OracleDriver
# spring.datasource.url=jdbc:oracle:thin:@1.234.5.158:11521/xe
# spring.datasource.username=ds210
# spring.datasource.password=pw210
- Boot20220328Application.java
package com.example.boot_20220328;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.context.annotation.ComponentScan;
@SpringBootApplication
@ComponentScan(basePackages = {
"com.example.controller",
"com.example.service",
"com.example.config" })
public class Boot20220328Application {
public static void main(String[] args) {
SpringApplication.run(Boot20220328Application.class, args);
}
}
package com.example.config;
import javax.sql.DataSource;
import org.apache.ibatis.session.SqlSessionFactory;
import org.mybatis.spring.SqlSessionFactoryBean;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.core.io.Resource;
import org.springframework.core.io.support.PathMatchingResourcePatternResolver;
// 환경설정파일: 실질적으로 필요 없음ㅋ;. mapper를 xml로 사용하기 위해 설정. 요새는 mapper를 interface로 사용함.
@Configuration
public class MybatisConfig {
// 서버가 구동되기 전에 만들어지는 객체
@Bean
public SqlSessionFactory sqlSessionFactory(DataSource dataSource) throws Exception {
System.out.println("datasource configuration");
SqlSessionFactoryBean sqlSessionFactoryBean = new SqlSessionFactoryBean();
sqlSessionFactoryBean.setDataSource(dataSource);
//mappers 위치 설정
Resource[] arrResource = new PathMatchingResourcePatternResolver().getResources("classpath:/mappers/*Mapper.xml");
sqlSessionFactoryBean.setMapperLocations(arrResource);
return sqlSessionFactoryBean.getObject();
}
}