初识JDBC
什么是JDBC?
JDBC 规范定义接口,具体的实现由各大数据库厂商来实现。 JDBC 是 Java 访问数据库的标准规范,真正怎么操作数据库还需要具体的实现类。
一张图说明JDBC核心的API与常用对象
常用api.png
重点分析以下几个API
Connection:数据库连接对象
写法:
DriverManager.getConnection(String url, String user, Stringpassword)其中 url的写法为:
jdbc:mysql://ip地址(域名):端口号/数据库名称功能:
- 获取执行sql 的对象
Statement createStatement()
PreparedStatement prepareStatement(String sql) - 管理事务:
开启事务:setAutoCommit(boolean autoCommit)设置为false就得手动提交
提交事务:commit()
回滚事务:rollback()
statement用于执行sql
1.boolean execute(String sql) 可以执行任意的sql 了吗
-
int executeUpdate(String sql)执行DML(insert、update、delete)语句、DDL(create,alter、drop)语句 可以看出影响了多少行
3.ResultSet executeQuery(String sql)执行DQL(select)语句 返回的就是select出来的hashset
JDBC工具类
1.将建立连接的代码简化为:JDBCUtils.getconnection
2.将释放资源的代码简化为:close(Statement stmt,Connection conn)
Spring JDBC
Spring提供的重要框架
使用步骤:
1.导入jar包
2.创建jdbctemplate对象,依赖于DataSource 直接new
3.调用jdbctemplate完成增删改差
update()执行DML语句。增、删、改语句
1.queryForMap()查询结果将结果集封装为map集合,将列名作为key,将值作为value 将这条记录封装为一个map集合,该集合长度只能是1
2.queryForList()查询结果将结果集封装为list集合,这个方法会将每一条记录封装为一个Map集合,再将Map集合装载到List集合中
3.query()查询结果,结果是JavaBean对象,query的参数是RowMapper ,可以完成数据到JavaBean的自动封装
这个参数用的是BeanPropertyRowMapper的实现类。
new BeanPropertyRowMapper<类型>(类型.class)
4.queryForObject查询结果,将结果封装为对象,一般用于聚合函数的查询,就是求count的sql语句








网友评论