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. SQLServer之修改索引

    使用SSMS数据库管理工具修改索引 使用表设计器修改索引 表设计器可以修改任何类型的索引,修改索引的步骤相同,本示例为修改唯一非聚集索引. 1.连接数据库,选择数据库,选择数据表->右键点击表- ...

  2. configparser_配置解析器

    configparser:配置解析器 import configparser config = configparser.ConfigParser() #配置文件 config[', 'Compres ...

  3. 爬虫系列二(数据清洗--->xpath解析数据)

    一 xpath介绍 XPath 是一门在 XML 文档中查找信息的语言.XPath 用于在 XML 文档中通过元素和属性进行导航. XPath 使用路径表达式在 XML 文档中进行导航 XPath 包 ...

  4. KERBEROS PROTOCOL TUTORIAL

    KERBEROS PROTOCOL TUTORIAL   This tutorial was written by Fulvio Ricciardi and is reprinted here wit ...

  5. day22-多并发编程基础(三)

    今天学习了并发编程中的最后一部分,协程,也是python中区别于java,c等语言中很大不同的一部分 1.协程产生的背景 2.协程的概念 3.yield模拟协程 4.协程中主要的俩个模块 5.协程的应 ...

  6. 前端——jQuery

    初识jQuery 什么是jQuery? jQuery就是JavaScript和Query,是辅助JavaScript开发的库,应用广泛,形成了行业标准.它对DOM操作做了很好的封装,我们可以用jQue ...

  7. 更多的贴片SOT-23三极管,请点击以下表格购买。

    更多的贴片SOT-23三极管,请点击以下表格购买. 型号 标识 电流 V数 极性 封装 购买链接 S9012 2T1 0.3A 20V PNP SOT-23 点击购买 S9013 J3 0.3A 25 ...

  8. ASP.NET Web API2返回值处理流程

    关于WebApi2控制器方法的四种返回类型请参考官方文档: https://docs.microsoft.com/zh-cn/aspnet/web-api/overview/getting-start ...

  9. building 'twisted.test.raiser' extension error: Microsoft Visual C++ 14.0 is required. Get it with "Microsoft Visual C++ Build Tools": http://landinghub.visualstudio.com/visual-cpp-build-tools

    Error msg: building 'twisted.test.raiser' extension error: Microsoft Visual C++ 14.0 is required. Ge ...

  10. js模块化世界

    前言 我们经常见到 一些这样的写法,require('xxx').import xx from '../components/data'.export const data....也听见一些这样的说法 ...