`
liuxi1024
  • 浏览: 389235 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

Spring + JdbcTemplate + JdbcDaoSupport examples

阅读更多

(转载)http://www.mkyong.com/spring/spring-jdbctemplate-jdbcdaosupport-examples/

 

    在Spring JDBC开发可以使用的JdbcTemplateJdbcDaoSupport类来简化整个数据库的操作流程。
在本教程中我们将重用去年春天+ JDBC例如,要查看之前(无JdbcTemplate的支持)和之间的不同(与JdbcTemplate的支持)的例子。JdbcTemplate的必须创建许多冗余代码(创建连接,关闭连接处理异常)在所有DAO数据库的操作方法 - 插入,更新和删除。它只是没有效率的,丑陋的容易出错繁琐。

1. Example Without JdbcTemplate

    没有

	private DataSource dataSource;
 
	public void setDataSource(DataSource dataSource) {
		this.dataSource = dataSource;
	}
 
	public void insert(Customer customer){
 
		String sql = "INSERT INTO CUSTOMER " +
				"(CUST_ID, NAME, AGE) VALUES (?, ?, ?)";
		Connection conn = null;
 
		try {
			conn = dataSource.getConnection();
			PreparedStatement ps = conn.prepareStatement(sql);
			ps.setInt(1, customer.getCustId());
			ps.setString(2, customer.getName());
			ps.setInt(3, customer.getAge());
			ps.executeUpdate();
			ps.close();
 
		} catch (SQLException e) {
			throw new RuntimeException(e);
 
		} finally {
			if (conn != null) {
				try {
					conn.close();
				} catch (SQLException e) {}
			}
		}
	}

 2、Example With JdbcTemplate

    有了JdbcTemplate的节省大量的冗余代码输入很多因为的JdbcTemplate自动处理

	private DataSource dataSource;
	private JdbcTemplate jdbcTemplate;
 
	public void setDataSource(DataSource dataSource) {
		this.dataSource = dataSource;
	}
 
	public void insert(Customer customer){
 
		String sql = "INSERT INTO CUSTOMER " +
			"(CUST_ID, NAME, AGE) VALUES (?, ?, ?)";
 
		jdbcTemplate = new JdbcTemplate(dataSource);
 
		jdbcTemplate.update(sql, new Object[] { customer.getCustId(),
			customer.getName(),customer.getAge()  
		});
 
	}

 3、Example With JdbcDaoSupport

    通过继承JdbcDaoSupport,设置数据源你的类的JdbcTemplate不再需要你只需要正确的数据源注入JdbcCustomerDAO而你可以通过使用getJdbcTemplate)方法的JdbcTemplate

	public class JdbcCustomerDAO extends JdbcDaoSupport implements CustomerDAO
	{
	   //no need to set datasource here
	   public void insert(Customer customer){
 
		String sql = "INSERT INTO CUSTOMER " +
			"(CUST_ID, NAME, AGE) VALUES (?, ?, ?)";
 
		getJdbcTemplate().update(sql, new Object[] { customer.getCustId(),
				customer.getName(),customer.getAge()  
		});
 
	}

 

 

 

<beans xmlns="http://www.springframework.org/schema/beans"
	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
	xsi:schemaLocation="http://www.springframework.org/schema/beans
	http://www.springframework.org/schema/beans/spring-beans-2.5.xsd">
 
	<bean id="dataSource" 
         class="org.springframework.jdbc.datasource.DriverManagerDataSource">
 
		<property name="driverClassName" value="com.mysql.jdbc.Driver" />
		<property name="url" value="jdbc:mysql://localhost:3306/mkyongjava" />
		<property name="username" value="root" />
		<property name="password" value="password" />
	</bean>
 
</beans>

 

<beans xmlns="http://www.springframework.org/schema/beans"
	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
	xsi:schemaLocation="http://www.springframework.org/schema/beans
	http://www.springframework.org/schema/beans/spring-beans-2.5.xsd">
 
	<bean id="customerDAO" class="com.mkyong.customer.dao.impl.JdbcCustomerDAO">
		<property name="dataSource" ref="dataSource" />
	</bean>
 
</beans>

 

 

分享到:
评论
1 楼 zuowoziji123 2014-03-14  
jdbctemplate中也封装了数据源啊,直接在spring配置文件中把DataSource注入就可以了,jdbctemplate和jdbcdaosupport也没有什么太大的区别啊,如果继承jdbcdaosupport反而还要在类中掉getJdbcTemplate。

相关推荐

    基于 Java+Mysql 实现的图书管理系统( Spring+Spring MVC+JdbcTemplate)

    【作品名称】:基于 Java+Mysql 实现的图书管理系统( Spring+Spring MVC+JdbcTemplate) 【适用人群】:适用于希望学习不同技术领域的小白或进阶学习者。可作为毕设项目、课程设计、大作业、工程实训或初期项目立项...

    基于java+Spring+SpringMVC+JDBCTemplate+JSP开发的博客论坛系统+源码+开发文档+视频演示

    基于java+Spring+SpringMVC+JDBCTemplate+JSP开发的博客论坛系统+源码+开发文档+视频演示,适合毕业设计、课程设计、项目开发。项目源码已经过严格测试,可以放心参考并在此基础上延申使用~ 基于java+Spring+...

    Spring+SpringMVC+JDBCTemplate简单用户管理功能

    在本项目中,我们主要探讨的是如何利用Spring框架、SpringMVC和JDBCTemplate来构建一个简单的用户管理系统。这是一个基础级别的应用,旨在展示这些技术的整合与基本操作,而不是追求高级的用户界面设计。接下来,...

    struts+spring +jdbctemplate demo

    Struts、Spring 和 JDBCTemplate 是三个在 Java Web 开发中常用的框架和技术,它们结合使用可以构建出高效且灵活的企业级应用程序。在这个“Struts+Spring+JdbcTemplate Demo”中,我们将探讨这三个组件如何协同工作...

    struts2.3.4+spring3.1.1+jdbctemplate

    Struts2.3.4+Spring3.1.1+JdbcTemplate 整合示例 在Web开发领域,Struts2、Spring和JDBC Template是常见的技术栈,它们各自承担着不同的职责。Struts2是一个强大的MVC框架,用于处理用户请求并控制应用流程;Spring...

    Spring + Hibernate + JdbcTemplate

    在IT行业中,Spring、Hibernate和JdbcTemplate是三个非常重要的Java框架和工具,它们在企业级应用开发中扮演着核心角色。下面将详细讲解这三个技术及其相互间的整合。 **Spring框架**: Spring是一个全面的企业级...

    Spring Security 3.1 +Spring +Servlet+JdbcTemplate

    在本项目中,开发者结合了Spring Security 3.1,Spring,Servlet以及JdbcTemplate来构建一个安全的Web应用。 Spring框架是Java开发中不可或缺的一部分,它简化了应用开发并提供了诸如依赖注入、面向切面编程等核心...

    spring-jdbcTemplate实例工程

    《深入解析Spring JdbcTemplate》 Spring JDBC Template是Spring框架中用于简化JDBC操作的一个核心组件,它是Spring对JDBC API的封装,旨在提供一个更加简洁、健壮且可测试的数据库访问层。在这个实例工程中,我们...

    sturt2+spring+jdbctemplate做的简易登录留言板,有用户,部门等管理

    标题 "sturt2+spring+jdbctemplate做的简易登录留言板,有用户,部门等管理" 描述了一款基于Struts2、Spring和JdbcTemplate技术构建的简单应用,它提供了用户管理和留言功能。这个项目可能是一个学习示例或者基础的...

    人工智能-项目实践-图书管理系统( Spring+Spring MVC+JdbcTemplate).zip

    图书管理系统java人工智能-项目实践-图书管理系统( Spring+Spring MVC+JdbcTemplate)项目简介本图书管理系统基于spring,spring mvc,数据库为mysql。前端使用了Bootstrap。系统功能该系统实现读者和管理员登陆,图书...

    图书管理系统( Spring+Spring MVC+JdbcTemplate).rar

    《图书管理系统:基于Spring+SpringMVC+JdbcTemplate的实现详解》 图书管理系统是信息化建设中的重要组成部分,它能够高效地管理和维护图书馆的资源,提供便捷的服务给读者和管理员。本系统采用主流的Spring框架、...

    人工智能-毕业设计-管理信息系统-基于java的图书管理系统( Spring+Spring MVC+JdbcTemplate)

    人工智能-毕业设计-管理信息系统-基于java的图书管理系统( Spring+Spring MVC+JdbcTemplate) 基于Spring+Spring MVC(Maven方式构建) Build Status Hex.pm 项目简介 本图书管理系统基于spring,spring mvc,数据库为...

    struts2+hibernate+spring+jdbctemplate+EXT集成实例

    Struts2、Hibernate、Spring、JdbcTemplate以及EXT是Java Web开发中的重要框架和技术,它们各自在应用程序的不同层面发挥着关键作用。将这些技术整合在一起,可以构建出高效、灵活且可维护的Web应用。 1. **Struts2...

    Maven整合Spring+SpringMVC+Hibernate+SpringDataJPA+JdbcTemplate

    在"Maven整合Spring+SpringMVC+Hibernate+SpringDataJPA+JdbcTemplate"的DEMO中,开发者通常会创建一个Maven工程,配置相关依赖,然后分别设置Spring的配置文件(如`applicationContext.xml`)、SpringMVC的配置文件...

    Spring3+Dwr+JdbcTemplate(拦截器方式实现防止重复提交)

    1.针对SpringMVC注解的配置...2.Spring+JdbcTemplate事物管理 3.Spring+Hibernate事物管理 4.Spring实现DWR注解方式的应用配置 5.Spring配置拦截器 6.Spring通过拦截器实现防止重复提交实例 对学习,会起到非常好的效果

    管理系统系列--图书管理系统( Spring+Spring MVC+JdbcTemplate).zip

    《图书管理系统:基于Spring+SpringMVC+JdbcTemplate的实现》 在IT行业中,开发高效、易维护的管理系统是常见的需求。本项目“图书管理系统”就是这样一个实例,它利用了Spring框架、SpringMVC和JdbcTemplate这三个...

    前期项目 Spring+Spring MVC+JDBC Template 增删改查

    在IT行业中,Spring框架是Java开发中的一个核心组件,它为构建可维护、模块化和松耦合的应用程序提供了一种强大的方式。本项目聚焦于Spring、Spring MVC和JDBC Template的集成应用,用于实现数据库的增删改查操作。...

    图书管理系统( Spring+Spring MVC+JdbcTemplate)

    基于Spring+Spring MVC(Maven方式构建) 项目简介 本图书管理系统基于spring,spring mvc,数据库为mysql。前端使用了Bootstrap。 系统功能 该系统实现读者和管理员登陆,图书的增删改查,读者的增删改查,借还图书,...

    springmvc+jdbctemplate+mysql(采用注解方式)

    总的来说,"springmvc+jdbctemplate+mysql(采用注解方式)"的组合为开发中小型项目提供了高效、灵活的基础。通过注解方式,开发者可以快速搭建系统,专注于业务逻辑,而无需过多关注底层配置。这个技术栈的使用能够...

    Oracle + jdbcTemplate + Spring + Java + Flex 实现分页.docx

    本文档主要讨论如何利用Oracle存储过程、jdbcTemplate(Spring框架的一个组件)以及Flex前端实现这一功能。 首先,Oracle存储过程是实现分页的关键部分。在Oracle中,可以通过创建存储过程来动态构造SQL语句,以...

Global site tag (gtag.js) - Google Analytics