JDBC Template

1. Spring JDBC

  • Spring框架对JDBC的简单封装,提供了一个JDBCTemplate对象用来简化JDBC的开发
  • 步骤:
    1. 导入jar包
    2. 创建JDBCTemplate对象,参数要传递DataSource
      • template = new jdbcTemplate(dataSource)
    3. 调用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的更多相关文章

  1. Spring框架学习10——JDBC Template 实现数据库操作

    为了简化持久化操作,Spring在JDBC API之上提供了JDBC Template组件. 1.添加依赖 添加Spring核心依赖,MySQL驱动 <!--Spring核心基础依赖--> ...

  2. SSM 实训笔记 -11- 使用 Spring MVC + JDBC Template 实现筛选、检索功能(maven)

    SSM 实训笔记 -11- 使用 Spring MVC + JDBC Template 实现筛选.检索功能(maven) 本篇是新建的一个数据库,新建的一个完整项目. 本篇内容: (1)使用 Spri ...

  3. Spring的JDBC Template

    Spring的JDBC Template(JDBC模板)简化JDBC API开发,使用上和Apache公司的DBUtils框架非常类似) 快速入门实例 1.创建项目后,导入Spring基础核心开发包. ...

  4. Unit06: Spring对JDBC的 整合支持 、 Spring+JDBC Template、Spring异常处理

    Unit06: Spring对JDBC的 整合支持 . Spring+JDBC Template .Spring异常处理 1. springmvc提供的异常处理机制 我们可以将异常抛给spring框架 ...

  5. spring学习笔记之---JDBC Template

    JDBC  Template(简化持久化操作) (一)创建项目 (1)Maven配置 <dependencies> <dependency> <groupId>ju ...

  6. JAVA JDBC Template的使用

    JAVA JDBC Template的使用 什么是Template? Spring框架对JDBC的简单封装.提供了一个JDBCTemplate对象简化JDBC的开发 Template使用步骤 导入ja ...

  7. jdbc事务、连接池概念、c3p0、Driud、JDBC Template、DBUtils

    JDBC 事务控制 什么是事务:一个包含多个步骤或者业务操作.如果这个业务或者多个步骤被事务管理,则这多个步骤要么同时成功,要么回滚(多个步骤同时执行失败),这多个步骤是一个整体,不可分割的. 操作: ...

  8. Spring之JDBC Template

    时间:2017-2-5 18:16 --Spring对不同持久化技术的支持Spring为各种支持的持久化技术都提供了简单操作的模板和回调.ORM持久化技术:    JDBC:        org.s ...

  9. Java泛型在spring jdbc template中的类似应用

    泛型的使用保证返回的对象类型的正确: package com.stono.gentest; import java.util.ArrayList; import java.util.List; pub ...

随机推荐

  1. 我的第一个python web开发框架(30)——定制ORM(六)

    在开发中,查询操作是使用最多的,而查询列表是其中之一,查询列表可分为分页查询和不分页查询(它们之间多了一次总记录数查询),还可以分为单表查询和多表关联查询,返回的结构体根据前端使用的表单框架不同而有所 ...

  2. java 下载word freemaker

    网上有很多优质的博文了,这里这篇博客就是记录一下字自己,写demo的历程,坑和收获 在java程序中下载word 有6中方式,此处省略(嘻嘻),不过大家公认的是 freemaker 和 PageOff ...

  3. Linux内核入门到放弃-内核活动-《深入Linux内核架构》笔记

    中断 中断类型 同步中断和异常.这些由CPU自身产生,针对当前执行的程序 异步中断.这是经典的中断类型,由外部设备产生,可能发生在任意时间. 在退出中断中,内核会检查下列事项. 调度器是否应该选择一个 ...

  4. 【翻译】WhatsApp 加密概述(技术白皮书)

    目录      简介      术语      客户端注册      会话初始化设置      接收会话设置      交换信息      传输媒体和附件      群组消息      通话设置   ...

  5. Quick Sort(Java)

    public static void main(String[] args) { Scanner input = new Scanner(System.in); int n = input.nextI ...

  6. Photoshop调出清晰的阴雨天气山水风景照

    既然我们前期拍摄到了一张效果还不错的照片,那么下一步就是通过后期处理得到最终的影像. 在处理之前,我们一定要做到胸有成竹,而不是盲目调整. 也就是说在还没调整照片的时候,就要计划和预想到最终的照片应该 ...

  7. hMailServer配置图文详细教程

    https://www.hmailserver.org/viewtopic.php?f=4&t=6

  8. CodeForces 280B Maximum Xor Se

    题目链接:http://codeforces.com/contest/280/problem/B 题目大意: 给定一个由n个数组成的一个序列,s[l..r] (1 ≤ l < r ≤ n)代表原 ...

  9. Shell命令-文件及目录操作之cp、find

    文件及目录操作 - cp.find 1.cp:复制文件或目录 cp命令的功能说明 cp命令用于复制文件或目录. cp命令的语法格式 cp [OPTION]... SOURCE... DIRECTORY ...

  10. Activiti6-数据库配置-dbconfig(学习笔记)

    常用数据连接池种类: 不一样的地方在于filters过滤器,设置了统计.和记录 avtiviti支持的数据库有: <?xml version="1.0" encoding=& ...