一、首先采用org.springframework.jdbc.datasource.DriverManagerDataSource类进行实现
1.applicationContext.xml配置如下:
2.Java的代码如下:
public static voidmain(String[] args) {
AbstractApplicationContext ctx= new ClassPathXmlApplicationContext("applicationContext.xml");
JdbcTemplate jdbcTemplate= (JdbcTemplate) ctx.getBean("jdbcTemplate");
String sql= "select * from stat_app";
jdbcTemplate.query(sql,newRowCallbackHandler() {
@Overridepublic void processRow(ResultSet rset) throwsSQLException {
System.out.println(rset.getString("source_market") + "\t" + rset.getString("violations_type"));
}
});
}
说明:
①mysql的url配置中需要注意编码和时区,不然会出现报错。同时&符号必须使用&转义。如果独立成properties就不需要了转义了。
②查询的数据进入processRow里面,每行数据都会调用一次这个方法。
二、使用org.apache.commons.dbcp.BasicDataSource类进行实现
1.首先需要引用jar包,pom.xml如下:
commons-dbcp
commons-dbcp
1.4
2.applicationContext.xml配置如下:
Java代码就和上面一样了。没什么区别。BasicDataSource多了一个close方法,可以自动管理连接对象。
三、将数据库配置独立出来。上面的配置如果想要把数据库相关配置独立为db.properties。可以首先创建文件db.properties,内容如下:
jdbc.url=jdbc:mysql://172.23.88.107:3306/test?useUnicode=true&characterEncoding=UTF-8&serverTimezone=UTC
jdbc.driver=com.mysql.jdbc.Driver
jdbc.username=root
jdbc.password=zdsoft
然后applicationContext.xml配置如下: