JDBC Template
JDBC Template
1. Spring JDBC
- Spring框架对JDBC的简单封装,提供了一个JDBCTemplate对象用来简化JDBC的开发
- 步骤:
- 导入jar包
- 创建JDBCTemplate对象,参数要传递DataSource
- template = new jdbcTemplate(dataSource)
- 调用jdbcTemplate对象的方法完成crud操作
- update():执行增删改的DML语句
- queryForMap():将查询结果封装为map集合
- queryForList():将查询结果封装为List集合
- query():查询结果,将结果封装为JavaBean对象
- queryObject():查询结果,将结果封装为对象
public class jdbcTemplateTest {
private JdbcTemplate template = new JdbcTemplate(DruidUtils.getDataSource());
@Test// 添加一条记录
public void test1() {
//JdbcTemplate template = new JdbcTemplate(DruidUtils.getDataSource());
String sql = "insert into student values(null, ?, ?, ?, ?, ?)";
int update = template.update(sql, "紫霞仙子", 24, 100, "女", 90);
System.out.println(update);
}
@Test // 删除一条记录
public void test2() {
String sql = "delete from student where id = ?";
int count = template.update(sql, 7);
System.out.println(count);
}
@Test// 查询ID = 1的记录,封装为map集合
//要注意的是查询的结果集长度只能是1,将列名作为key,值作为value封装为map集合
public void test3() {
String sql = "select * from student where id = ?";
Map<String, Object> map = template.queryForMap(sql, 1);
System.out.println(map);
}
// 输出{id=1, name=唐三藏, age=25, english=60, sex=女, math=90}
@Test// 将结果封装为List集合,里面装的是map集合
public void test4() {
String sql = "select * from student";
List<Map<String, Object>> maps = template.queryForList(sql);
for (Map<String, Object> map : maps) {
System.out.println(map);
}
}
@Test// 将结果封装为javabean的List集合 BeanPropertyRowMapper完成查询结果自动封装为javabean对象
public void test5() {
String sql = "select * from student";
List<Student> list = template.query(sql, new BeanPropertyRowMapper<Student>(Student.class));
for (Student student : list) {
System.out.println(student);
}
}
@Test // 总记录数// queryForObject一般用来查询聚合函数
public void test6() {
String sql = "select count(id) from student";
Long count = template.queryForObject(sql, Long.class);
System.out.println(count);
}
}
JDBC Template的更多相关文章
- Spring框架学习10——JDBC Template 实现数据库操作
为了简化持久化操作,Spring在JDBC API之上提供了JDBC Template组件. 1.添加依赖 添加Spring核心依赖,MySQL驱动 <!--Spring核心基础依赖--> ...
- SSM 实训笔记 -11- 使用 Spring MVC + JDBC Template 实现筛选、检索功能(maven)
SSM 实训笔记 -11- 使用 Spring MVC + JDBC Template 实现筛选.检索功能(maven) 本篇是新建的一个数据库,新建的一个完整项目. 本篇内容: (1)使用 Spri ...
- Spring的JDBC Template
Spring的JDBC Template(JDBC模板)简化JDBC API开发,使用上和Apache公司的DBUtils框架非常类似) 快速入门实例 1.创建项目后,导入Spring基础核心开发包. ...
- Unit06: Spring对JDBC的 整合支持 、 Spring+JDBC Template、Spring异常处理
Unit06: Spring对JDBC的 整合支持 . Spring+JDBC Template .Spring异常处理 1. springmvc提供的异常处理机制 我们可以将异常抛给spring框架 ...
- spring学习笔记之---JDBC Template
JDBC Template(简化持久化操作) (一)创建项目 (1)Maven配置 <dependencies> <dependency> <groupId>ju ...
- JAVA JDBC Template的使用
JAVA JDBC Template的使用 什么是Template? Spring框架对JDBC的简单封装.提供了一个JDBCTemplate对象简化JDBC的开发 Template使用步骤 导入ja ...
- jdbc事务、连接池概念、c3p0、Driud、JDBC Template、DBUtils
JDBC 事务控制 什么是事务:一个包含多个步骤或者业务操作.如果这个业务或者多个步骤被事务管理,则这多个步骤要么同时成功,要么回滚(多个步骤同时执行失败),这多个步骤是一个整体,不可分割的. 操作: ...
- Spring之JDBC Template
时间:2017-2-5 18:16 --Spring对不同持久化技术的支持Spring为各种支持的持久化技术都提供了简单操作的模板和回调.ORM持久化技术: JDBC: org.s ...
- Java泛型在spring jdbc template中的类似应用
泛型的使用保证返回的对象类型的正确: package com.stono.gentest; import java.util.ArrayList; import java.util.List; pub ...
随机推荐
- LeetCode算法题-Max Consecutive Ones(Java实现)
这是悦乐书的第242次更新,第255篇原创 01 看题和准备 今天介绍的是LeetCode算法题中Easy级别的第109题(顺位题号是485).给定二进制数组,找到此数组中连续1的最大数量.例如: 输 ...
- 用 PLSQL 创建新用户及导入 dmp
一.创建表空间 在导入 dmp 文件之前,你要在数据库里面给它分配一片存储它的地方(表空间). 如果我们知道需要导入的数据库的表空间直接创建就可以,如果不不知道,也没有关系,我们可以用 txt 打开 ...
- Redis学习笔记(2)——Redis的下载安装部署
一.下载Redis Redis的官网下载页上有各种各样的版本,如图 但是官网下载的Redis项目不正式支持Windows.如果需要再windows系统上部署,要去GitHub上下载.我下载的是Redi ...
- springclound
https://blog.csdn.net/w893932747/article/details/80896315 //这个有怎么创建client的 https://blog.csdn.net/m0_ ...
- Disruptor-架构思维的转变
相对于无锁技术,Disruptor对于架构思维的转变,才是其最大亮点. Pub Event 说到RingBuffer做的队列,通常都说的是“一读一写“,或者“多读一写“.而Disruptor天生是为“ ...
- 关于创建本地docker仓库
从远程仓库中下载regitstry镜像文件,下载后运行命令即可:docker run -p 5000:5000 -d registry
- 数据类型:list列表[]、元祖tuple()、dict字典{}
List 列表[] 可变的 lst = [1,2,3,4] #改 lst[(元素下标)] = '需要修改的' #通过下表修改 lst[下标:下标] = '需要修改的' #通过范围修改 #加 lst.a ...
- springboot整合mybatis的多数据源解决办法
最近项目有一个非解决不可的问题,我们的项目中的用户表是用的自己库的数据,但是这些数据都是从一个已有库中迁过来的,所以用户信息都是在那个项目里面维护,自然而然我们项目不提供用户注册功能,这就有个问题,如 ...
- 转 HttpClient 设置连接超时时间
要: HttpClient 4.5版本升级后,设置超时时间的API又有新的变化,请大家关注. HttpClient升级到4.5版本后,API有很多变化,HttpClient 4之后,API一直没有太稳 ...
- 跳出语句break 和continue
关键字break 常见的两种用法 在switch语句当中,一旦执行,整个switch语句立刻结束 在循环语句当中,一旦执行,整个循环语句立刻结束.跳出循环 代码举例: public class Dem ...