Spring-JdbcTemplate 总结
1. 查询单个对象:
a) 基本类型
================================================
下面两个方法主要适用于静态sql
◆ public
Object queryForObject(String sql, RowMapper rowMapper)
◆ public
Object queryForObject(String sql, Class requiredType)
注意:requiredType 只能是基本类型的class,只针对基本类型有效
◆ public
Object queryForObject(String sql, Object[] args, Class requiredType)
◆ public
Object queryForObject(String sql, Object[] args, RowMapper rowMapper)
◆ public
Object queryForObject(String sql, Object[] args, int
[] argTypes, Class requiredType)
注:其中argTypes 可以使用java.sql.Types常量类中的常量值
◆ public Object queryForObject(String sql, Object[] args, int
[] argTypes, RowMapper rowMapper)
以下主要用于查询数值对象
◆ public int
queryForInt(String sql, Object[] args)
◆ public long
queryForLong(String sql, Object[] args)
==================================================
下面的方法将返回的各个列封装成map对象,key为列名,value为列值.只能一行数据,不能返回多行数据.
◆ public
Map queryForMap(String sql, Object[] args)
b) 引用类型
◆ public
Object queryForObject(String sql, RowMapper rowMapper)
◆ public
Object queryForObject(String sql, Object[] args, RowMapper rowMapper)
◆ public
Map queryForMap(String sql, Object[] args)
2. 查询多个对象
a) 基本类型:
◆ public
List queryForList(String sql, Object[] args)
注:返回的list的每个元素都是一个map对象,该map对象封装了一行数据且只有一行数据,包括要查询的列字段
b) 引用类型:
◆ public
List queryForList(String sql, Object[] args)
Iterator iter = this
.jdbcTemplate.queryForList(sql,new
Object[]{}).iterator();
List list = new
ArrayList();
while
(iter.hasNext()){
User user = new
User();
Map map = (Map) iter.next();
Set<Entry<String, String>> set = map.entrySet();
Iterator<Entry<String, String>> iter2 = set.iterator();
Entry<String, String> entry = iter2.next();
user.setUsername(entry.getValue());
entry = iter2.next();
user.setPassword(entry.getValue());
list.add(user);
}
◆ public
List query(String sql, Object[] args, RowMapper rowMapper)
注:返回的list 中的元素可以是引用类型的对象.
◆ public
Object execute(ConnectionCallback action)
注:使用回调接口.将各个字段值封装成引用类型的对象,然后以list方式返回.
3. 修改操作.适用于增、删、改
◆ public int
update(String sql, Object[] args)
4. 批处理
String sql = "insert into user(username,password) values(?,?)";
final
List list = new
ArrayList();
for
(int
i = 0;i < 5 ; i++){
User user = new
User();
user.setPassword("dog" + i);
user.setUsername("dog" + i);
list.add(user);
}
int
[] rst = this
.jdbcTemplate.batchUpdate(sql, new
BatchPreparedStatementSetter(){
public int
getBatchSize() {
return
list.size();
}
public void
setValues(PreparedStatement ps, int
i)
throws
SQLException {
User user = (User) list.get(i);
ps.setString(1, user.getUsername());
ps.setString(2, user.getPassword());
}
});
分享到:
相关推荐
对于JDBC,Spring的JdbcTemplate和SimpleJdbcTemplate提供了一种基于模板的方法来执行SQL,避免了手动管理连接和结果集。 四、MVC(Model-View-Controller)框架 Spring MVC是Spring框架的一部分,用于构建Web应用...
总结来说,Spring的JdbcTemplate提供了简洁、强大的API,使得数据库操作变得更加简单和安全。通过使用它,我们可以避免手动管理数据库连接,减少潜在的资源泄露问题,同时增强代码的可读性和可维护性。通过结合...
总结,Spring Boot 1.5.3.RELEASE以其便捷的初始化、自动配置、内嵌服务器、数据访问和测试支持等特性,极大地提升了开发效率和应用质量。它使得开发者能够更加专注于业务逻辑,而非基础设施的搭建,从而在现代Java...
总结来说,Spring框架通过其全面的功能和模块化设计,极大地提升了Java开发的效率和质量。深入理解和熟练掌握Spring,对于任何Java开发者而言,都是至关重要的技能。阅读并实践“spring-framework-reference”参考...
本主题将深入探讨Spring框架中的JdbcTemplate组件,以及模板模式和回调机制的概念。 **1. Spring JdbcTemplate** JdbcTemplate是Spring提供的一个用于简化数据库操作的API,它是Spring对JDBC(Java Database ...
总结来说,Spring框架2.0.6是一个强大且全面的Java开发工具,它的DI和AOP特性极大地简化了企业级应用的复杂性。通过理解并熟练运用其核心概念和组件,开发者能够构建出高效、可维护的软件系统。在实际开发中,结合其...
Spring 2.0.8加强了对JDBC的抽象,提供了JdbcTemplate和SimpleJdbcTemplate,简化了数据库操作。同时,它还集成了多种ORM框架,如Hibernate、JPA等,提供了统一的编程接口。 八、集成测试 Spring 2.0.8引入了...
1. **DAO操作**:使用Spring的JdbcTemplate或HibernateTemplate进行数据库操作,理解Spring如何简化数据访问层的编写。 2. **事务管理**:通过实例了解如何利用@Transactional注解实现声明式事务。 3. **AOP应用**:...
总结来说,Spring Framework 4.3.6.RELEASE是企业级Java开发的重要工具,其丰富的功能和优秀的社区支持,使得它成为了Java EE领域不可或缺的一部分。无论是在传统的MVC应用、微服务架构还是现代的云原生应用中,...
总结,Spring Framework 4.0.0.RELEASE是Spring发展的一个关键阶段,它不仅增强了与Java 8的兼容性,还引入了对WebSocket和反应式编程的支持,提升了开发效率和应用性能。通过深入理解和熟练掌握Spring框架,开发者...
总结,Spring框架的深度分析涵盖了其核心模块、Web开发、数据访问、事务管理等多个方面,通过学习和理解这些组件,开发者可以更好地运用Spring来构建高效、可维护的大型企业级应用。同时,Spring Boot和Spring Cloud...
**基于注解的Spring JdbcTemplate** 在Java世界中,Spring框架是企业级应用开发的首选。Spring JDBC模絫提供了一种简洁的方式来处理数据库操作,而`Spring JdbcTemplate`是这个模絫的核心组件。本教程将深入探讨...
总结,"demo-springboot-jdbctemplate"项目展示了如何在Spring Boot环境中利用JdbcTemplate进行数据库操作。它涉及了Spring Boot的自动配置、数据源设置、JdbcTemplate的使用、事务管理和错误处理等核心知识点。通过...
027-spring-ioc-三层架构组件管理介绍和jdbctemplate使用.mp4 028-spring-ioc-三层架构组件管理实战.mp4 029-spring-ioc-基于注解方式ioc配置.mp4 030-spring-ioc-扩展周期方法和作用域注解.mp4 031-spring-ioc-...
027-spring-ioc-三层架构组件管理介绍和jdbctemplate使用.mp4 028-spring-ioc-三层架构组件管理实战.mp4 029-spring-ioc-基于注解方式ioc配置.mp4 030-spring-ioc-扩展周期方法和作用域注解.mp4 031-spring-ioc-...
027-spring-ioc-三层架构组件管理介绍和jdbctemplate使用.mp4 028-spring-ioc-三层架构组件管理实战.mp4 029-spring-ioc-基于注解方式ioc配置.mp4 030-spring-ioc-扩展周期方法和作用域注解.mp4 031-spring-ioc-...
027-spring-ioc-三层架构组件管理介绍和jdbctemplate使用.mp4 028-spring-ioc-三层架构组件管理实战.mp4 029-spring-ioc-基于注解方式ioc配置.mp4 030-spring-ioc-扩展周期方法和作用域注解.mp4 031-spring-ioc-...
总结,Spring Framework 5.3.1官方源码的学习能让我们深入理解其设计理念和实现细节,从而在实际开发中更有效地运用这一强大框架。通过不断探索和实践,我们可以提升Java开发技能,构建出更加高效、健壮的应用程序。
### Spring中的JdbcTemplate #### JdbcTemplate概述 JdbcTemplate是Spring框架提供的一种用于简化JDBC编程的对象。通过封装原生的JDBC API,JdbcTemplate不仅提高了代码的可读性和可维护性,还帮助开发者避免了...