需要用到的技术:
(Properties配置文件+Druid数据库连接池+Spring框架)
1、先导入所需的jar包:mysql驱动+druid连接池+JdbcTemplate
注意: 导入的jar包需放置与src目录同级的libs目录中
2、定义配置文件: druid.properties
# 注册驱动
driverClassName=com.mysql.jdbc.Driver
# 指定连接的路径 语法:jdbc:mysql://ip地址(域名):端口号/数据库名称
url=jdbc:mysql://127.0.0.1:3306/db4
# 用户名
username=root
# 密码
password=root
# 初始化连接数量
initialSize=5
# 最大连接数量
maxActive=10
# 最大等待时间
maxWait=3000
注意:druid.properties配置文件所存放路径位于src目录中
3、抽取JDBC工具类(可以简化书写)
public class JDBCUtils {
//0、定义成员变量 DataSource
private static DataSource ds;
static {
try {
//1、加载配置文件
Properties pro = new Properties();
InputStream is = JDBCUtils .class.getClassLoader().getResourceAsStream("druid.properties");
if (is != null) {
pro.load(is);
//2、获取数据源
ds = DruidDataSourceFactory.createDataSource(pro);
} else {
System.out.println("配置文件为空!");
}
} catch (Exception e) {
e.printStackTrace();
}
}
//1、抽取一个方法获取数据源
public static DataSource getDataSource() {
return ds;
}
//2、抽取一个方法获取连接对象
public static Connection getConnection() throws SQLException {
return ds.getConnection();
}
}
4、调用JdbcTemplate的方法来完成CRUD的操作
public class DemoTemplate {
public static void main(String[] args) throws SQLException {
//创建对象(参数需要传递数据源对象)
JdbcTemplate jt = new JdbcTemplate(JDBCUtils.getDataSource());
//使用对象:
/*
1. update():执行DML语句。增、删、改语句
2. queryForMap():查询结果将结果集封装为map集合,
将列名作为key,将值作为value 将这条记录封装为一个map集合
* 注意:这个方法查询的结果集长度只能是1
3. queryForList():查询结果将结果集封装为list集合
* 注意:将每一条记录封装为一个Map集合,再将Map集合装载到List集合中
4. query():查询结果,将结果封装为JavaBean对象
* query的参数:RowMapper
* 一般我们使用BeanPropertyRowMapper实现类。
可以完成数据到JavaBean的自动封装
* new BeanPropertyRowMapper<类型>(类型.class)
5. queryForObject:查询结果,将结果封装为对象
* 一般用于聚合函数的查询
*/
}
}
5、总结
使用上述方法可以帮助我们简化很多操作,能使我们把更多的精力放在如何更好的定义sql语句上。
如果有需求的话,我还会写一篇关于JdbcTemplate方法的详细使用案例教程