首页
Web开发
Windows程序
编程语言
数据库
移动开发
系统相关
微信
其他好文
会员
首页
>
数据库
> 详细
【JdbcTemplete】JdbcTemplete代码详解--模板方法详解
时间:
2016-06-16 20:12:25
阅读:
433
评论:
0
收藏:
0
[点我收藏+]
标签:
JdbcTemplete类层次结构
JdbcAccessor:对DataSource数据源进行管理和配置;
JdbcOperations:定义了通过JDBC操作数据库的基本操作方法;
JdbcTemplate:提供了实现JdbcOperations接口方法的细节;
JdbcTemplate中模板方法设计模式的使用
模板方法设计模式:模板方法中定义算法的基本骨架,由子类在实现其中的一些细节。
在jdbc访问数据库时,需要创建和维护、销毁Connection、Statement,以及处理SqlException等,如下所示:
从上面可以看出,所有的数据库操作,都有一个固定的套路,为了避免重复代码,
JdbcTemplate使用模板方法设计模式,将数据库访问中涉及到的不变部分放在
JdbcTemplate中,而将变化的部分(比如sql语句)放到Callback中;
JdbcTemplate中的
execute()
就是
模板方法
:
从上面的代码中,可以看到,创建Connection和Statement,以及处理exception、释放资源等,都是固定的,具体的sql都是变化的部分,都放在Callback中。
下面以query为例进行介绍:
下面在看一个update的例子:
JdbcTemplate中的Callback
主要有3个:
Statement;
CallableStatement;
PreparedStatement;
每种Statement都有自己对应的execute()方法,都是模板方法,且实现细节基本相同;
每种execute()方法中的Callback函数,分别对应上面3种;
JdbcTemplate的query()
JdbcTemplate中的query方法,使用的基本都是preparedStatement
JdbcTemplate方法概览
查询方法主要分为如下几大类:
query()
queryForList()
queryForMap()
queryForMap()
queryForRowSet()
而上面的每一种,基本又可以分为3类,分别为:
ResultSetExtractor<T> :
RowCallbackHandler
RowMapper<T>
具体区别可参见:
http://www.cnblogs.com/ssslinppp/p/4954099.html
来自为知笔记(Wiz)
【JdbcTemplete】JdbcTemplete代码详解--模板方法详解
标签:
原文地址:http://www.cnblogs.com/ssslinppp/p/5591868.html
踩
(
0
)
赞
(
0
)
举报
评论
一句话评论(
0
)
登录后才能评论!
分享档案
更多>
2021年07月29日 (22)
2021年07月28日 (40)
2021年07月27日 (32)
2021年07月26日 (79)
2021年07月23日 (29)
2021年07月22日 (30)
2021年07月21日 (42)
2021年07月20日 (16)
2021年07月19日 (90)
2021年07月16日 (35)
周排行
更多
数据库进阶
2021-07-29
在 Oracle 数据库中执行 SQL 语句遇到特殊字符的转义方式
2021-07-28
Windows Logstash同步 Sqlserver 到Elasticsearch
2021-07-26
mysql数据库(11):恢复数据
2021-07-26
mysql数据库(9):常用查询的例子
2021-07-26
SQLAlchemy 多对多
2021-07-26
ClickHouse的JDBC连接
2021-07-26
Apache HBase 1.7.1 发布,分布式数据库
2021-07-26
数据库常用架构和同步工作原理
2021-07-26
MySQL数据库设计规范(仅供参考)
2021-07-26
友情链接
兰亭集智
国之画
百度统计
站长统计
阿里云
chrome插件
新版天听网
关于我们
-
联系我们
-
留言反馈
© 2014
mamicode.com
版权所有 联系我们:gaon5@hotmail.com
迷上了代码!