`
dongguoh
  • 浏览: 70673 次
  • 性别: Icon_minigender_1
  • 来自: 山水之乡
社区版块
存档分类
最新评论

Spring 中的与 JdbcTemplate 相关的类的用法 学习笔记一

阅读更多
java 代码
  1. 一。  在Spring中使用JdbcTemplate进行编码只需要根据明确定义的一组契约来实现架设接口。   
  2.     PreparedStatementCreator回调接口通过给定的Connection创建一个PreparedStatement,包含SQL和任何相关   
  3. 的参数。CallableStatementCreator实现同样的处理,只不过它创建的是CallabeStatement.   
  4. RowCallbackHandler接口则从数据集的每一行中提取值   
  5.   
  6. 1.NamedParameterJdbcTemplate 类   
  7.     NamedParameterJdbcTemplate类增加了在SQL语句中使用命名参数的支持。它的内部封装啦一个变通的   
  8. JdbcTemplate,并作为其代理来完成大部分工作。如果我们需要访问其内部JdbcTemplate的实例,那么需要使用   
  9. getJdbcOperations()方法返回JdbcOperations接口   
  10. 下面是两者之间的不同之处并加以说明.   
  11.   
  12. 例  :   
  13. public int countOfActorsByFirstName(String firstName){   
  14.     String sql="select count(0) from ACTOR where first_Name=:firstName";   
  15.     NamedParameterJdbcTemplate template=new NamedParameterJdbcTemplate(this.getDataSource());   
  16.     SqlParameterSource namedParameters=new MapSqlParameterSource("first_Name",firstName);   
  17.   
  18.     return template.queryForInt(sql,namedParameters);   
  19. }   
  20.  我们也可以使用基于Map风格的名值对将命名参数传递给NamedParameterJdbcTemplate  ,它实现啦NamedParameterJdbcOperations接口   
  21.  剩下的工作将由调用该接口的相应的方法去完成.   
  22.   
  23.  public int countOfActorsByFirstName(String firstName){   
  24.     String sql="select count(0) from ACTOR where first_Name=:firstName";   
  25.     NamedParameterJdbcTemplate template=new NamedParameterJdbcTemplate(this.getDataSource());   
  26.     Map namedParameters=new HashMap();   
  27.     namedParameters.put("first_name",firstName);   
  28.   
  29.     return template.queryForInt(sql,namedParameters);   
  30. }   
  31.   
  32. 2.SimpleJdbcTemplate 类   
  33.   
  34.     SimpleJdbcTemplate类是JdbcTemplate类的一个包装器,它利用了Java 5的一些语言特性,比如Varargs   
  35. (可变参数)和Autoboxing(自动打包)。   
  36. 下面首先是使用标准的JdbcTemplate进行数据访问,最后再使用SimpleJdbcTemplate 做同样的事就可以看出它的方便   
  37. 之处啦。   
  38.   
  39. 例: 用JdbcTemplate   
  40.   
  41. public Actor FindActor(Long id){   
  42.     String sql="select id,first_name,last_name from T_Actor where id=?";   
  43.     RowMapper mapper=new RowMapper(){   
  44.         public Object mapRow(ResultSet rs,int rowNum) throws SQLException{   
  45.   
  46.         Actor actor=new Actor();   
  47.         actor.setId(rs.getLong(Long.valueOf(rs.getLong("id"))));   
  48.         actor.setFirstName(rs.getString("first_name"));   
  49.         actor.setLastName(rs.getString("last_name"));   
  50.   
  51.         return actor;   
  52.         }   
  53.     };   
  54.     JdbcTemplate jdbcTemplate=new JdbcTemplate(this.getDataSource());   
  55.   
  56.     return (Actor) JdbcTemplate.queryForObject(sql,mapper,new Object[]{Long.valueOf(id)});   
  57. }   
  58.   
  59. 用 SimpleJdbcTemplate 类   
  60.   
  61. public Actor FindActor(Long id){   
  62.     String sql="select id,first_name,last_name from T_Actor where id=?";   
  63.     ParameterizedRowMapper<Actor> mapper=new ParameterizedRowMapper<Actor>(){   
  64.   
  65.         public Actor mapRow(ResultSet rs,int rowNum) throws SQLException{   
  66.   
  67.         Actor actor=new Actor();   
  68.         actor.setId(rs.getLong("id"));   
  69.         actor.setFirstName(rs.getString("first_name"));   
  70.         actor.setLastName(rs.getString("last_name"));   
  71.   
  72.         return actor;   
  73.         }   
  74.     };   
  75.     SimpleJdbcTemplate simpleJdbcTemplate=new SimpleJdbcTemplate(this.getDataSource());   
  76.   
  77.     return (Actor) simpleJdbcTemplate.queryForObject(sql,mapper,id);   
  78. }   
  79.   
分享到:
评论

相关推荐

    SSH笔记-Spring JdbcTemplate

    SSH笔记-Spring JdbcTemplate是关于如何在Spring框架中利用JdbcTemplate进行数据库操作的教程。Spring是一个广泛应用的Java企业级应用框架,它提供了多种数据访问工具,而JdbcTemplate就是其中之一,用于简化JDBC...

    Spring学习笔记&源码

    本资料“Spring学习笔记&源码”是基于网易云课堂黑马程序员的Spring四天精通课程,旨在帮助学习者深入理解和实践Spring框架。 笔记部分可能会涵盖以下内容: 1. **Spring概述**:介绍Spring框架的历史、特点和主要...

    设计模式学习笔记(十五)命令模式及在Spring JdbcTemplate 中的实现.doc

    例如,你可以定义一个 `MySqlCommandExecutor` 类,其中有一个 `executeSelect()` 方法,该方法接受 SQL 查询语句作为参数,并通过 JdbcTemplate 的 `query()` 方法执行查询,返回结果集。这样的设计使得业务逻辑与 ...

    Java Spring框架学习笔记(内附源码).pdf

    在本次的Java Spring框架学习笔记中,将对Spring框架的核心概念进行详细解析,包括Spring的 IOC(控制反转)、AOP(面向切面编程)、jdbcTemplate、事务管理、Spring5新特性以及与Mybatis的整合。本学习笔记提供了...

    spring框架学习笔记

    Spring框架是Java应用开发中广泛使用的轻量级框架,它以IoC(Inversion of Control,控制反转)和DI(Dependency Injection,依赖注入)为核心,提供了丰富的功能,包括但不限于组件管理、AOP(Aspect Oriented ...

    spring学习笔记

    ### Spring学习笔记知识点详解 #### 一、Spring框架概述 **Spring** 是一个开源的、分层的企业级应用开发框架,旨在简化Java EE应用程序的开发。它的主要目标是提高开发效率,减少耦合度,并提供一种更为简洁的...

    Spring2.5学习笔记

    ### Spring2.5 学习笔记详解 #### 一、Spring 框架简介 Spring 是一个开源的轻量级 ...以上就是关于 Spring2.5 学习笔记的主要知识点,通过这些内容的学习,可以更好地理解和掌握 Spring 框架的基本原理和使用方法。

    spring学习笔记,包括源码学习

    这个"spring学习笔记,包括源码学习"的资料很可能包含了一系列关于Spring框架的核心概念、配置、使用方法以及深入源码的解析。 首先,让我们来了解一下Spring框架的基础知识。Spring的核心特性是依赖注入,它允许...

    spring学习笔记 私塾在线

    【Spring学习笔记 私塾在线】是一份综合性的学习资源,包含了从网上收集的各种Spring相关的教程和实战指导。这份笔记的目的是为学习者提供一个全面的Spring框架学习平台,通过集成多个主题,帮助用户深入理解和掌握...

    spring-note spring 读书笔记

    Spring框架是Java开发中不可或缺的一部分,它以其强大的依赖注入(IOC)和面向切面编程(AOP)功能闻名。这份"spring-note spring 读书笔记"深入探讨了Spring的核心概念以及如何与其他流行技术如JDBC、Hibernate、...

    Spring Boot学习笔记

    总结,Spring Boot学习笔记涵盖了Thymeleaf模板引擎的使用,如何实现国际化,以及如何将MyBatis和JDBC整合到Spring Boot应用中,这些都是在构建现代Java后端应用时不可或缺的技术。通过深入理解并掌握这些知识点,...

    Spring Boot 学习笔记完整教程.pdf

    ### Spring Boot 学习笔记知识点 #### 1. Spring Boot 简介 Spring Boot 是由 Pivotal 团队提供的全新框架,其设计目的是用来简化新Spring应用的初始搭建以及开发过程。它使用了特定的方式来配置Spring,使得开发者...

    Spring技术内幕 学习笔记

    标题中的“Spring技术内幕 学习笔记”表明这是一份关于深入理解Spring框架核心机制的资料集合,主要关注Spring框架的内部工作原理和高级用法。描述中的“NULL”没有提供额外信息,但我们可以通过标签“源码”和...

    spring学习笔记(最新版)

    ### Spring学习笔记(最新版) #### 一、Spring框架简介 Spring框架是一个广泛使用的轻量级企业级应用框架,它提供了全面的解决方案来构建复杂的Java应用程序。Spring的核心特性包括依赖注入(Dependency Injection,...

    spring 学习笔记 32页word

    【Spring 学习笔记概述】 Spring 是一个广泛使用的 Java 应用框架,尤其在企业级应用开发中占有重要地位。其核心特性是依赖注入(Dependency Injection,DI)和控制反转(Inversion of Control,IoC),这两者是...

    Spring+SpringMVC基础学习笔记(b站课程学习笔记)

    JdbcTemplate是Spring框架中的一个数据库访问组件,它简化了SQL操作,提供了模板方法来执行查询、更新和批处理操作。使用JdbcTemplate,开发者可以避免手动管理数据库连接和语句的创建,从而减少错误并提高代码的...

    Spring笔记示例源代码

    "Spring笔记示例源代码"这个资源很可能是为了帮助学习者深入理解Spring框架的各种功能和用法而提供的实际代码示例。 1. **Spring IoC**:IoC是Spring的核心特性,它将对象的创建和管理权交给Spring容器,使得开发者...

    spring2.5_学习笔记

    《Spring 2.5 学习笔记》 在IT领域,Spring框架是Java企业级应用开发的首选框架,而Spring 2.5是其发展历史中的一个重要里程碑。本笔记将深入探讨Spring 2.5的核心特性,帮助读者理解并掌握这一版本的精髓。 一、...

Global site tag (gtag.js) - Google Analytics