`

Spring jdbc 操作存储过程

 
阅读更多

首先我们要用Spring 与 Jdbc 调用存储过程

 

step1 : Spring 与jdbc 整合 原理介绍

 

           我们选用什么数据源呢在这里我们选用c3p0 数据连接池(当然这个连接池也是相对比较成熟的)

           添加c3p0.jar 包

          

step 2: 配置数据源

         

<!-- c3p0 JDBC DataSource -->
	<bean id="dataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource" destroy-method="close">
	   <property name="driverClass" value="oracle.jdbc.driver.OracleDriver" />
	   <property name="jdbcUrl" value="jdbc:oracle:thin:@192.168.0.108:1521:orcl" />
	   <property name="user" value="xxxx" />
	   <property name="password" value="xxx" />
	   <property name="minPoolSize" value="1" />
   	   <property name="maxPoolSize" value="3"/>  
   	   <property name="initialPoolSize" value="1"/>
	</bean>

step3 : 配置Spring 与 Jdbc整合

 

<!-- JDBC Support -->
	<bean id="jdbcTemplate" class="org.springframework.jdbc.core.JdbcTemplate">
        <property name="dataSource"><ref bean="dataSource"/></property>
    </bean>

 

step4 : 使用jdbcTemplate 使用Spring 的IOC 依赖注入

 

<!-- 报表系统 -->
	<bean id="sqwsReportDao" class="com.xxx.xxxxx.dao.bbxt.impl.SqwsReportDAOImpl">
		<property name="sessionFactory" ref="sessionFactory"></property>
		<property name="jdbcTemplate" ref="jdbcTemplate" />
	</bean>

   

 

 

最后在程序中使用JdbcTemplate

 

 

/**
	 * 调用存储过程
	 * 2011-7-26
	 * @author liuqing
	 * @param procedureName
	 * @param year
	 * @return void 
	 */
	public void call(final String procedureName,final int year) {
		this.jdbcTemplate.execute(new ConnectionCallback() {
			@Override
			public Object doInConnection(Connection conn) 
				throws SQLException,DataAccessException {
				Log.info(this.getClass() + 
						" JDBC year Call:" + procedureName);
				CallableStatement call = conn.prepareCall(procedureName);
				call.setInt(1, year);
				call.execute();
				return null;
			}
		});
	}

  

方法调用

/**
	 * 方法调用代码
	 * 2011-7-26
	 * @author liuqing
	 */
	public void runReportProcedure(final String procedureName
			,final int year) {
		this.call("{ call " + procedureName + "(?)}",year);
	}

 

 

 

分享到:
评论

相关推荐

    Spring JdbcTemplate调用Oracle存储过程实现CRUD

    在本文中,我们将讨论如何使用 Spring JdbcTemplate 调用 Oracle 存储过程来实现 CRUD(Create、Read、Update、Delete)操作。我们将首先编写 Oracle 存储过程,然后编写 Java 代码使用 Spring JdbcTemplate 调用...

    Spring JDBC与事务管理

    (1)使用Spring JDBC实现书店的购书过程,即有如下一个BookShopDao接口,编写BookShopDaoImp类实现该接口中的所有方法,并通过JUnit测试这些方法。 (2)(2) 在BookShopDao中添加一个purchase购书方法,其操作流程是...

    spring_JDBC整合包

    此外,Spring JDBC也支持存储过程的调用,以及批量更新操作。在处理大量数据时,还可以通过分页查询来优化性能。在分布式环境下,Spring JDBC配合Spring的事务管理功能,可以实现跨数据库操作的事务一致性。 这个...

    SpringJDBC.rar_SpringJDBC_spring jdbc

    通过这个SpringJDBC.rar的案例,初学者可以学习到如何配置DataSource,如何创建JdbcTemplate实例,以及如何编写和执行SQL语句。同时,实践中还可以了解到如何将Spring JDBC整合到Spring Boot项目中,以及如何处理...

    spring jdbc.zip

    它提供了大量的方法,用于执行SQL查询、更新、存储过程等,这些方法能够自动处理资源的关闭、异常处理以及结果集的映射。例如,我们可以通过以下方式使用JdbcTemplate执行SQL查询: ```java @Autowired private ...

    spring对jdbc的支持jar包

    1. **JdbcTemplate**:这是Spring JDBC的基础组件,它通过模板方法模式封装了常见的JDBC操作,如执行SQL查询、更新、存储过程等。使用JdbcTemplate,开发者无需手动管理数据库连接、预编译语句、结果集转换等细节,...

    spring-jdbc jar包.rar

    1. **JdbcTemplate**:这是Spring JDBC的核心类,它通过模板方法模式将常见的JDBC操作进行了封装,如执行SQL查询、更新、调用存储过程等。开发者只需要关注SQL语句和参数,而无需处理连接创建、关闭、异常处理等繁琐...

    Spring JDBC应用实例讲解

    JdbcTemplate是Spring JDBC的基础,它提供了模板方法来处理常见的JDBC任务,如执行SQL查询、更新、存储过程等。使用JdbcTemplate可以避免手动管理连接、预编译语句、结果集处理等繁琐工作,从而降低出错的可能性。 ...

    SpringJDBC训练素材.zip

    在学习Spring JDBC的过程中,你将深入理解如何设置数据源、事务管理以及如何进行CRUD(创建、读取、更新和删除)操作。 首先,要了解Spring JDBC的基本架构,包括DataSource、JdbcTemplate、SimpleJdbcInsert、...

    Spring Jdbc的jar包

    此外,Spring JDBC的`JdbcOperations`接口扩展了`JdbcTemplate`,提供了一组通用的JDBC操作,包括执行SQL查询、调用存储过程等。`NamedParameterJdbcTemplate`则是另一个扩展,它支持命名参数的SQL查询,使得查询...

    Spring事务管理和SpringJDBC思维导图

    而"Spring JDBC.twd"可能会展示Spring JDBC的主要类、方法以及它们在数据库操作中的应用。 通过学习和理解这些知识点,开发者可以更高效地使用Spring框架进行数据库操作,同时保证事务处理的正确性和性能。掌握...

    SpringMVC+SpringJDBC

    SpringJDBC是Spring对Java数据库连接(JDBC)的封装,它简化了数据库操作,提供了事务管理、异常转换等功能,使得开发者无需直接处理低级的JDBC代码。 1. **JdbcTemplate**:SpringJDBC的核心,提供了执行SQL查询和...

    spring中jdbc的操作

    此外,SimpleJdbcInsert、SimpleJdbcCall等工具类进一步简化了插入、存储过程调用等操作。 总之,Spring JDBC通过提供强大的模板类和工具类,降低了JDBC编程的复杂性,提高了代码的可维护性。在实际项目中,结合...

    Spring JDBC相关jar包:spring_jdbc_4.0.0.zip

    这是一个非常实用的工具类,它通过模板方法模式封装了JDBC的基本操作,如执行SQL查询、更新、存储过程等。`JdbcTemplate`提供了异常转换、参数绑定、结果集处理等功能,使得代码更加简洁且易于维护。 首先,让我们...

    SpringJDBC.rar_jdbc spring_spring jd_spring jdbc_spring使用JDBC进行数

    2. **JdbcTemplate**:这是Spring JDBC最常用的工具类,提供了大量的模板方法,用于执行SQL查询、更新、调用存储过程等操作,大大减少了手动处理结果集和异常的情况。 3. **SimpleJdbcTemplate**:这是JdbcTemplate...

    最简单的用户登录与注册系统 spring mvc spring jdbc

    Spring MVC是Spring框架的一个模块,主要用于构建Web应用程序,而Spring JDBC则是Spring提供的用于简化数据库操作的工具。 【描述】"用spring4.0.5版本开发的,spring mvc,spring jdbc,最简单的用户登录,注册和...

    SpringJDBC工程对应Jar包

    其次,Spring JDBC还引入了`SimpleJdbcInsert`和`SimpleJdbcCall`,分别用于简化插入操作和调用存储过程。`SimpleJdbcInsert`可以根据表结构自动生成INSERT语句,而`SimpleJdbcCall`则可以方便地调用数据库中的存储...

    Spring Data JDBC与JDBC的区别

    总结起来,Spring Data JDBC通过提供高级的抽象和自动化,降低了数据库操作的复杂性,提高了开发效率,而JDBC则是底层的数据库访问API,灵活性更高但需要更多的手动配置和代码编写。根据项目需求和团队技能,开发者...

    Spring+Spring MVC+Spring JDBC+MySql实现简单登录注册

    在登录注册系统中,Spring JDBC将帮助我们执行插入、查询等数据库操作,如用户信息的存储和验证。 4. **MySQL数据库**:MySQL是一个开源的关系型数据库管理系统,用于存储用户账户信息。在登录注册系统中,我们需要...

    SpringMVC3 + SpringJDBC整合 源码。

    分页查询是大型Web应用中常见的需求,SpringMVC结合SpringJDBC可以通过编写自定义的SQL语句或者使用存储过程来实现。例如,可以传递页码和每页大小作为参数,然后在SQL查询中使用LIMIT和OFFSET关键字进行分页。在...

Global site tag (gtag.js) - Google Analytics