JdbcTemplate써도 여러명이 이용하면 메모리 많이 쓰게 되니
여유롭게 커넥션 많이 만들어 놓고(설정 다 해놓고),
요청이 들어오면 제공
-> 커넥션풀을 이용하여 서버의 부하를 최소화
방법: Bean객체 미리 만들고,
@Autowired를 이용해 Bean객체를 바로 가져다 씀
dataSource = new ComboPooledDataSource();
try {
dataSource.setDriverClass(driver);
dataSource.setJdbcURl(url);
dataSource.setUser(userid);
dataSource.setPassword(userpw);
} catch (PropertyVetoExcetion e) {
e.printStackTrace();
}
<beans:bean id='dataSource" class=" " />
<beans:property name="driverClass" value=" " />
<beans:property name="jdbcUrl" value=" " />
<beans:property name="user" value=" " />
<beans:property name="password" value=" " />
<beans:property name="maxPoolSize" value=" " />
<beans:property name="checkoutTimeout" value=" " />
<beans:property name="maxIdleTime" value=" " />
<beans:property name="idleConnectionTestPeriod" value=" " />
</beans:bean>
을 ~.xml파일에 만들어주면
MemberDao.java파일에서
@Autowired
public MemberDao(ComboPooledDataSource dataSource) {
this.template = new JdvcTemplate(dataSource);
})
이렇게 사용할 수 있다!
~Config.java파일 만들어주면 됨
@COnfiguiratuion
public class DBConfig {
@Bean
public ComboPooledDataSource dataSource() throws PropertyVetoExcepttion{
dataSource.setDriverClass(" ");
dataSource.setJdbcUrl(" ");
dataSource.setUser(" ");
dataSource.setPassword(" ");
dataSource.setMaxPoolSize( );
dataSource.setCheckoutTimeout( );
dataSource.setMaxIdleTime( );
dataSource.setidleConnectionTestPeriod( );
return dataSource;
}
}