spring-JDBC Template

 

JDBC Template概念

为简化持久化操作,spring在JDBC API之上提供JDBC Template组件

提供统一模板:

 

环境配置

1、创建MySQL数据库

2、搭建maven项目,并引入依赖

3、配置spring配置文件

         数据库连接配置

         JDBC连接配置

 

基本操作

execute

通常执行DDL语句

update or batchUpdate

 

Int update(String sql,Object[] args)

Int update(String sql,Object… args)

Int[] batchUpdate(String [] sql)

Int[] batchUpdate(String [] sql,List<object[]> args)------------执行同构SQL

 

query or queryXXX

查询简单对象

查询一个

T queryForObject(String sql,Class<T> type)

T queryForObject(String sql,Object[] args,Class<T> type)

T queryForObject(String sql,Class<T> type,Object… args)

查询多个

List<T> queryForList(String sql,Class<T> type)

List<T> queryForList(String sql,Object[] args,Class<T> type)

List<T> queryForList(String sql,Class<T> type,Object… args)

 

查询复杂对象

查询一个

Map queryForObject(String sql)

Map queryForObject(String sql,Object[] args)

Map queryForObject(String sql,Object… args)

查询多个

List< Map<String,Object>> queryForList (String sql)

List< Map<String,Object>> queryForList (String sql,Object[] args)

List< Map<String,Object>> queryForList (String sql,Object… args)

查询复杂对象(封装成实体)

查询一个

T queryForMap(String sql,RowMapper<T> mapper)

T queryForMap(String sql,Object[] args, RowMapper<T> mapper)

T queryForMap(String sql, RowMapper<T> mapper,Object… args)

查询多个

List<T> queryForList(String sql, RowMapper<T> mapper)

List<T> queryForList(String sql,Object[] args, RowMapper<T> mapper)

List<T> queryForList(String sql, RowMapper<T> mapper,Object… args)

Call

NamedParameterJdbcTemplate

 

 

案例流程:

在搭建好开发环境之后

1、  创建DAO接口

2、  创建接口实现类

用XML管理:

注解注入

优缺点

优:简单、灵活

缺:SQL和Java代码掺杂,功能不丰富

持久化操作特点:必须、机械

ORM:对象-关系(JDBC Template不是ORM)

JDBC Template:spring框架对JDBC操作的封装,简单、灵活但是不够强大

猜你喜欢

转载自www.cnblogs.com/thyHome/p/9075015.html