入门:
https://www.cnblogs.com/smyhvae/p/4085684.html
一、字段名称和实体类命名不用
解决办法:给查询结果的显示字段取别名,如TEMPLATE_ID AS templateId
select news_id as id, title from test where id=1
二、DBUtils使用BeanListHandler及BeanHandler时返回null
一、使用Bean相关方法时返回null
问题描述:
1 |
|
解决方案:
1 |
|
二、查询时报错参数为空
问题描述
1 |
|
解决方案
添加实体类的无参构造方法,亲测可用!!!
如:
public News() {
}
public News(int id, int news_id, String title, String topic) {
this.id = id;
this.news_id = news_id;
this.title = title;
this.topic = topic;
}
复制地址:https://www.cnblogs.com/liuyp-ken/p/5740569.html
三、DataSource使用教程
1.
DataSource 与 DriverManager 获取连接的不同:
a).DriverManager是由SUN实现的,它只供了最基本的获取
连接的方式。
而DataSource是一个接口,不光SUN可以实现,很多第三方
的中间件也可以实现,而且实现得很好。
DataSource一般有如下三种实现方式:
标准实现 -- 提供最基本的连接,也就是DriverManager的方式
连接池的实现 -- 提供了连接池,是一种可以缓存及管理多个
数据库连接的“容器”。
分布事务的实现 -- 提供了连接池,而且这个池中的连接是
支持分布式事务的(Distribute Transaction)
一般来说,DataSource 都会由专业的中间件(MiddleWare)来实现。
当然,也有一些开源(免费)的 DataSource的实现。
最有名就是:Apache 组织提供的 commons-dbcp
--
建议,今后都使用 DataSource 来获取连接。
数据源 与 连接池 的关系
数据源(DataSource)是由SUN制定的一个规范(获取数据库连接的规范),
连接池是数据源规范一种比较主流、重要的实现。
2.c3p0 datasource使用:https://blog.csdn.net/u011506951/article/details/48060657
四、ResultSetHandler接口使用与源码实现
ArrayHandler :将ResultSet中第一行的数据转化成对象数组
ArrayListHandler将ResultSet中所有的数据转化成List,List中存放的是Object[]
BeanHandler :将ResultSet中第一行的数据转化成类对象
BeanListHandler :将ResultSet中所有的数据转化成List,List中存放的是类对象
ColumnListHandler :将ResultSet中某一列的数据存成List,List中存放的是Object对象
KeyedHandler :将ResultSet中存成映射,key为某一列对应为Map。Map中存放的是数据
MapHandler :将ResultSet中第一行的数据存成Map映射
MapListHandler :将ResultSet中所有的数据存成List。List中存放的是Map
ScalarHandler :将ResultSet中一条记录的其中某一列的数据存成Object