- 浏览: 112046 次
- 性别:
- 来自: 北京
文章分类
最新评论
-
Inmethetiger:
yixiandave 写道能不能在Validation注解的m ...
Spring验证小结和问题 -
yixiandave:
Inmethetiger 写道yixiandave 写道如果用 ...
Spring验证小结和问题 -
Inmethetiger:
yixiandave 写道如果用JSR303的话,可以引入hi ...
Spring验证小结和问题 -
yixiandave:
如果用JSR303的话,可以引入hibernate-valid ...
Spring验证小结和问题 -
jackytang520:
貌似用了这么久,没有碰到过这个问题..
idea属性文件中文乱码
首发地址: http://inmethetiger.iteye.com/blog/1687495
上一篇是基于RowMapper写的。这篇是基于CallbackHandler写的。基本上类似。写下只是为了方便记忆
使用RowCallbackHandler主要返回值是void,所以,需要使用一个容器装载结果集
实例如下:也是六个。和RowMapper对应。
1:void query(String sql, RowCallbackHandler rch)
@Test public void SqlRowCall() { jdbcTemplate.update("insert into test(name) values('name1')"); jdbcTemplate.update("insert into test(name) values('name2')"); jdbcTemplate.update("insert into test(name) values('name2')"); jdbcTemplate.update("insert into test(name) values('name4')"); String listSql = "select * from test"; final List objList = new ArrayList(); jdbcTemplate.query(listSql, new RowCallbackHandler() { @Override public void processRow(ResultSet rs) throws SQLException { Map row = new HashMap(); row.put(rs.getInt("id"), rs.getString("name")); objList.add(row); } }); for (int i = 0; i < objList.size(); i++) { Object obj = objList.get(i); System.out.println(obj.toString()); } }
2:void query(String sql, Object[] args, RowCallbackHandler rch)
public void SqlArgsRowCall() { jdbcTemplate.update("insert into test(name) values('name1')"); jdbcTemplate.update("insert into test(name) values('name2')"); jdbcTemplate.update("insert into test(name) values('name2')"); jdbcTemplate.update("insert into test(name) values('name4')"); String listSql = "select * from test where name=?"; final List objList = new ArrayList(); jdbcTemplate.query(listSql,new Object[]{"name2"},new RowCallbackHandler() { @Override public void processRow(ResultSet rs) throws SQLException { Map row = new HashMap(); row.put(rs.getInt("id"), rs.getString("name")); objList.add(row); } }); for (int i = 0; i < objList.size(); i++) { Object obj = objList.get(i); System.out.println(obj.toString()); } }
3:void query(String sql, Object[] args, int[] argTypes, RowCallbackHandler rch)
@Test public void SqlArgsArgsTypeRowCall() { jdbcTemplate.update("insert into test(name) values('name1')"); jdbcTemplate.update("insert into test(name) values('name2')"); jdbcTemplate.update("insert into test(name) values('name2')"); jdbcTemplate.update("insert into test(name) values('name4')"); String listSql = "select * from test where name=?"; final List objList = new ArrayList(); jdbcTemplate.query(listSql,new Object[]{"name2"},new int[]{java.sql.Types.INTEGER},new RowCallbackHandler() { @Override public void processRow(ResultSet rs) throws SQLException { Map row = new HashMap(); row.put(rs.getInt("id"), rs.getString("name")); objList.add(row); } }); for (int i = 0; i < objList.size(); i++) { Object obj = objList.get(i); System.out.println(obj.toString()); } }
4:void query(String sql,RowCallbackHandler)
@Test public void SqlRowCallArgs(){ jdbcTemplate.update("insert into test(name) values('name1')"); jdbcTemplate.update("insert into test(name) values('name2')"); jdbcTemplate.update("insert into test(name) values('name2')"); jdbcTemplate.update("insert into test(name) values('name4')"); String listSql = "select * from test where name=?"; final List objList = new ArrayList(); jdbcTemplate.query(listSql,new RowCallbackHandler() { @Override public void processRow(ResultSet rs) throws SQLException { Map row = new HashMap(); row.put(rs.getInt("id"), rs.getString("name")); objList.add(row); } },"name2"); for (int i = 0; i < objList.size(); i++) { Object obj = objList.get(i); System.out.println(obj.toString()); } }
5:void query(PreparedStatementCreator psc, RowCallbackHandler rch)
public void PreRowCall() { jdbcTemplate.update("insert into test(name) values('name1')"); jdbcTemplate.update("insert into test(name) values('name2')"); jdbcTemplate.update("insert into test(name) values('name2')"); jdbcTemplate.update("insert into test(name) values('name4')"); final String listSql = "select * from test where name=?"; final List objList = new ArrayList(); jdbcTemplate.query(new PreparedStatementCreator() { @Override public PreparedStatement createPreparedStatement(Connection con) throws SQLException { PreparedStatement ps = con.prepareStatement(listSql); ps.setString(1, "name2"); return ps; } }, new RowCallbackHandler() { @Override public void processRow(ResultSet rs) throws SQLException { Map row = new HashMap(); row.put(rs.getInt("id"), rs.getString("name")); objList.add(row); } }); for (int i = 0; i < objList.size(); i++) { Object obj = objList.get(i); System.out.println(obj.toString()); } }
6:void query(String sql, PreparedStatementSetter pss, RowCallbackHandler rch)
@Test public void SqlPreRowCall() { jdbcTemplate.update("insert into test(name) values('name1')"); jdbcTemplate.update("insert into test(name) values('name2')"); jdbcTemplate.update("insert into test(name) values('name2')"); jdbcTemplate.update("insert into test(name) values('name4')"); final String listSql = "select * from test where name=?"; final List objList = new ArrayList(); jdbcTemplate.query(listSql,new PreparedStatementSetter() { @Override public void setValues(PreparedStatement ps) throws SQLException { ps.setString(1, "name2"); } }, new RowCallbackHandler() { @Override public void processRow(ResultSet rs) throws SQLException { Map row = new HashMap(); row.put(rs.getInt("id"), rs.getString("name")); objList.add(row); } }); for (int i = 0; i < objList.size(); i++) { Object obj = objList.get(i); System.out.println(obj.toString()); } }
--------------------------------------------------广告线-----------------------------------------------------------------------
发表评论
-
Spring验证小结和问题
2014-07-27 16:36 4999因为从云笔记中粘贴过来的,代码格式就没有了。格式稍好点的地 ... -
在spring中使用Ehcache
2014-06-18 16:07 1095前提: 使用环境:详细页面 依赖包: ... -
Spring MVC 3.0版本和3.1版本的一点小区别
2013-06-12 00:57 2784先上代码: 主要是控制器: @Controller ... -
在Maven下的springJpa多模块开发引起的问题
2013-02-21 22:33 3180最近的项目搭建中,出现了一个问题。 ... -
spring 事务二:注解springmvc+注解or声明式事务
2012-11-23 08:42 2315前面讲了两大类,四种spring事务的方式。这篇主要记录基于注 ... -
spring 事务一:非注解springmvc+注解or声明式事务
2012-11-22 15:47 2585前两天一人问我,在使用spring mvc (基于注解) 的时 ... -
在spring中使用mybatis
2012-11-14 21:59 3735今天在使用mybatis的时候,发现dao的实现竟然可以不需要 ... -
@Controller中的@RequestMapping参数
2012-11-07 09:56 3903转载自:http://blog.sina.com.cn/s/b ... -
三种连接池的配置
2012-09-28 10:00 1223用spring默认的连接池性能效率不高, 如果数据库重启 ... -
spring jdbc之query详细实例1
2012-09-27 16:15 3293首发:http://inmethetiger.iteye. ... -
spring jdbc之最简单的增删改查
2012-09-27 10:10 2140首发地址: http://inmethetiger.iteye ... -
spring的实例化方式
2012-09-26 17:48 1913首发地址: http://inmethetiger.iteye ... -
Spring Aop(一)
2012-09-26 16:06 805这是一个简单的spring aop的例子。 一:定义目 ... -
spring mvc表单标签和@ModelAttribute
2012-09-20 21:05 9212首发地址:http://inmethetiger.iteye ... -
spring相关资料的URL(持续更新)
2012-09-20 13:34 1246首发地址http://inmethetiger.iteye.c ... -
Spring mvc注解之实现MultiActionController功能
2012-09-16 16:38 1712首发地址http://inmethetiger.iteye.c ... -
spring mvc 之注解版基础
2012-09-14 17:28 977首发地址:http://inmethetiger.iteye ... -
spring mvc 之MultiActionController和MethodNameResolver--附带实例
2012-09-14 17:23 2067首发地址:http://inmethetiger.iteye. ... -
Spring MVC的开发流程--附带实例
2012-09-12 18:05 2631首发地址: http://inmethetiger.i ...
相关推荐
当我们谈论"Spring+JDBC实例"时,通常是指在Spring框架中使用JDBC进行数据访问的方式,这种方式可以利用Spring提供的便利性,同时保留对数据库的直接控制。 在Spring框架中,JDBC操作被封装在`org.springframework....
在本文中,我们将深入探讨Spring JDBC的应用实例,了解如何利用它来实现高效且灵活的数据访问。首先,我们需要理解Spring JDBC是如何通过JdbcTemplate和NamedParameterJdbcTemplate这两个主要工具来封装JDBC操作的。...
1. **JdbcTemplate**: 这是Spring JDBC的核心接口,提供了一组用于执行SQL语句的方法,如`update()`, `query()`, `execute()`等。它能处理数据库连接的打开和关闭,事务管理,异常处理等,让开发者专注于SQL语句本身...
通过这个SpringJDBC.rar的案例,初学者可以学习到如何配置DataSource,如何创建JdbcTemplate实例,以及如何编写和执行SQL语句。同时,实践中还可以了解到如何将Spring JDBC整合到Spring Boot项目中,以及如何处理...
这个`springjdbc.zip`压缩包很可能包含了示例代码和配置文件,用于演示如何使用Spring JDBC来执行基本的数据库操作,如增、删、改、查。 1. **Spring JDBC模块**:Spring JDBC模块主要由`org.springframework.jdbc`...
在本实例中,我们将深入探讨Spring JDBC的使用,并以`SpringJdbcTemplate`为例来阐述其主要功能和优势。 首先,Spring JDBC通过`JdbcTemplate`和`NamedParameterJdbcTemplate`类提供了强大的数据库访问功能。`...
这个“SpringJDBC.rar”压缩包文件可能包含了关于如何在Spring框架中集成和使用JDBC的相关示例和教程。下面将详细解释Spring JDBC的核心概念、功能以及使用方法。 首先,Spring JDBC的核心目标是简化传统的JDBC编程...
2. **DataSource**: 数据源是连接到数据库的工厂,Spring JDBC通过它获取数据库连接。在`epet`项目中,可能会配置一个`DataSource` bean,例如使用Apache的`BasicDataSource`或者Oracle的`UcpDataSource`。 3. **...
2. **SQL查询**:`JdbcTemplate`提供了多种执行SQL查询的方法,如`queryForList`、`queryForObject`和`query`。这些方法可以配合RowMapper或ResultSetExtractor来处理查询结果。 3. **参数化查询**:`JdbcTemplate`...
在本文中,我们将深入探讨如何使用Spring JDBC进行数据库操作,并结合使用不同的连接池技术,包括Spring自带的、C3P0、DBCP和Druid。此外,我们还将介绍一个自定义的行映射器工具类,它在处理数据库查询结果时能提供...
在Spring 2.5中,我们可以创建一个JdbcTemplate实例并注入DataSource,如下所示: ```java @Autowired private DataSource dataSource; @Bean public JdbcTemplate jdbcTemplate() { return new JdbcTemplate...
下面将详细阐述两种在Spring中测试JDBC的方法。 ### 方法一:基于`JdbcTemplate` `JdbcTemplate`是Spring JDBC提供的一个关键类,它提供了大量的模板方法来执行SQL查询、更新和存储过程。使用`JdbcTemplate`测试...
本实例将深入解析如何使用Spring JDBC Template进行数据库操作,并包含详细的测试用例。 首先,我们需要在项目中引入Spring JDBC的相关依赖。在Maven工程中,可以在pom.xml文件中添加如下依赖: ```xml ...
下面我们将详细探讨Spring JDBC的核心概念、工作原理以及如何使用JdbcTemplate进行数据库操作。 1. **Spring JDBC概述** Spring JDBC是Spring框架的一部分,它提供了一种抽象层,使得开发者可以避免编写大量的JDBC...
Spring JDBC模板类——`org.springframework.jdbc.core.JdbcTemplate`是Spring框架中的核心组件,它为Java开发者提供了一种方便、安全的方式来执行SQL语句,而无需直接管理数据库连接。`JdbcTemplate`通过抽象出低...
在这个"springJdbcDemo11_java_springjdbc_"项目中,我们将深入探讨Spring集成JDBC的基本概念、配置和核心组件,以及如何通过实例快速上手并理解其工作原理。 1. **Spring JDBC简介** Spring JDBC模块是为了简化...
- 配置JdbcTemplate:通过@Autowired注解注入DataSource,然后Spring会自动创建并配置JdbcTemplate实例。 - 执行SQL:JdbcTemplate提供了多种方法,如update()用于执行更新操作,query()用于查询,它们都处理了...
压缩包中的"JDBC_2_Spring"可能包含了一些示例代码或配置文件,这些资源可以帮助你更直观地了解Spring JDBC的实际应用。通过学习这些示例,你可以掌握如何将Spring的JDBC支持与MySQL数据库集成,以及如何编写和执行...
3. **JdbcTemplate**: 是Spring JDBC的核心类,它提供了大量模板方法来执行SQL查询、更新等操作,比如`execute()`, `query()`, `update()`等。这些方法自动处理了结果集关闭、资源释放等细节,使代码更简洁、健壮。 ...