spring-JDBC Template

Posted floatthy

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了spring-JDBC Template相关的知识,希望对你有一定的参考价值。

 

JDBC Template概念

 

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

提供统一模板:

 

 

环境配置

 

1、创建mysql数据库

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

3、配置spring配置文件

         数据库连接配置

         JDBC连接配置

 

 

基本操作

 

execute

通常执行DDL语句

update or batchUpdate

1 Int update(String sql,Object[] args)
2 Int update(String sql,Object… args)
3 
4 Int[] batchUpdate(String [] sql)
5 Int[] batchUpdate(String [] sql,List<object[]> args)------------执行同构SQL

query or queryXXX

查询简单对象

查询一个

1 T queryForObject(String sql,Class<T> type)
2 T queryForObject(String sql,Object[] args,Class<T> type)
3 T queryForObject(String sql,Class<T> type,Object… args)

查询多个

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

 

查询复杂对象

查询一个

1 Map queryForObject(String sql)
2 Map queryForObject(String sql,Object[] args)
3 Map queryForObject(String sql,Object… args)

查询多个

1 List< Map<String,Object>> queryForList (String sql)
2 List< Map<String,Object>> queryForList (String sql,Object[] args)
3 List< Map<String,Object>> queryForList (String sql,Object… args)
查询复杂对象(封装成实体)

查询一个

1 T queryForMap(String sql,RowMapper<T> mapper)
2 T queryForMap(String sql,Object[] args, RowMapper<T> mapper)
3 T queryForMap(String sql, RowMapper<T> mapper,Object… args)

查询多个

1 List<T> queryForList(String sql, RowMapper<T> mapper)
2 List<T> queryForList(String sql,Object[] args, RowMapper<T> mapper)
3 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操作的封装,简单、灵活但是不够强大

以上是关于spring-JDBC Template的主要内容,如果未能解决你的问题,请参考以下文章

JDBC Template

vscode中设置vue代码片段

vscode代码片段生成vue模板

Spring的JDBC Template

Xcode中的变量模板(variable template)的用法

7-微信小程序 模板(template)