首先我们要用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(Create、Read、Update、Delete)操作。我们将首先编写 Oracle 存储过程,然后编写 Java 代码使用 Spring JdbcTemplate 调用...
(1)使用Spring JDBC实现书店的购书过程,即有如下一个BookShopDao接口,编写BookShopDaoImp类实现该接口中的所有方法,并通过JUnit测试这些方法。 (2)(2) 在BookShopDao中添加一个purchase购书方法,其操作流程是...
此外,Spring JDBC也支持存储过程的调用,以及批量更新操作。在处理大量数据时,还可以通过分页查询来优化性能。在分布式环境下,Spring JDBC配合Spring的事务管理功能,可以实现跨数据库操作的事务一致性。 这个...
通过这个SpringJDBC.rar的案例,初学者可以学习到如何配置DataSource,如何创建JdbcTemplate实例,以及如何编写和执行SQL语句。同时,实践中还可以了解到如何将Spring JDBC整合到Spring Boot项目中,以及如何处理...
它提供了大量的方法,用于执行SQL查询、更新、存储过程等,这些方法能够自动处理资源的关闭、异常处理以及结果集的映射。例如,我们可以通过以下方式使用JdbcTemplate执行SQL查询: ```java @Autowired private ...
1. **JdbcTemplate**:这是Spring JDBC的基础组件,它通过模板方法模式封装了常见的JDBC操作,如执行SQL查询、更新、存储过程等。使用JdbcTemplate,开发者无需手动管理数据库连接、预编译语句、结果集转换等细节,...
1. **JdbcTemplate**:这是Spring JDBC的核心类,它通过模板方法模式将常见的JDBC操作进行了封装,如执行SQL查询、更新、调用存储过程等。开发者只需要关注SQL语句和参数,而无需处理连接创建、关闭、异常处理等繁琐...
JdbcTemplate是Spring JDBC的基础,它提供了模板方法来处理常见的JDBC任务,如执行SQL查询、更新、存储过程等。使用JdbcTemplate可以避免手动管理连接、预编译语句、结果集处理等繁琐工作,从而降低出错的可能性。 ...
在学习Spring JDBC的过程中,你将深入理解如何设置数据源、事务管理以及如何进行CRUD(创建、读取、更新和删除)操作。 首先,要了解Spring JDBC的基本架构,包括DataSource、JdbcTemplate、SimpleJdbcInsert、...
此外,Spring JDBC的`JdbcOperations`接口扩展了`JdbcTemplate`,提供了一组通用的JDBC操作,包括执行SQL查询、调用存储过程等。`NamedParameterJdbcTemplate`则是另一个扩展,它支持命名参数的SQL查询,使得查询...
而"Spring JDBC.twd"可能会展示Spring JDBC的主要类、方法以及它们在数据库操作中的应用。 通过学习和理解这些知识点,开发者可以更高效地使用Spring框架进行数据库操作,同时保证事务处理的正确性和性能。掌握...
SpringJDBC是Spring对Java数据库连接(JDBC)的封装,它简化了数据库操作,提供了事务管理、异常转换等功能,使得开发者无需直接处理低级的JDBC代码。 1. **JdbcTemplate**:SpringJDBC的核心,提供了执行SQL查询和...
此外,SimpleJdbcInsert、SimpleJdbcCall等工具类进一步简化了插入、存储过程调用等操作。 总之,Spring JDBC通过提供强大的模板类和工具类,降低了JDBC编程的复杂性,提高了代码的可维护性。在实际项目中,结合...
这是一个非常实用的工具类,它通过模板方法模式封装了JDBC的基本操作,如执行SQL查询、更新、存储过程等。`JdbcTemplate`提供了异常转换、参数绑定、结果集处理等功能,使得代码更加简洁且易于维护。 首先,让我们...
2. **JdbcTemplate**:这是Spring JDBC最常用的工具类,提供了大量的模板方法,用于执行SQL查询、更新、调用存储过程等操作,大大减少了手动处理结果集和异常的情况。 3. **SimpleJdbcTemplate**:这是JdbcTemplate...
Spring MVC是Spring框架的一个模块,主要用于构建Web应用程序,而Spring JDBC则是Spring提供的用于简化数据库操作的工具。 【描述】"用spring4.0.5版本开发的,spring mvc,spring jdbc,最简单的用户登录,注册和...
其次,Spring JDBC还引入了`SimpleJdbcInsert`和`SimpleJdbcCall`,分别用于简化插入操作和调用存储过程。`SimpleJdbcInsert`可以根据表结构自动生成INSERT语句,而`SimpleJdbcCall`则可以方便地调用数据库中的存储...
总结起来,Spring Data JDBC通过提供高级的抽象和自动化,降低了数据库操作的复杂性,提高了开发效率,而JDBC则是底层的数据库访问API,灵活性更高但需要更多的手动配置和代码编写。根据项目需求和团队技能,开发者...
在登录注册系统中,Spring JDBC将帮助我们执行插入、查询等数据库操作,如用户信息的存储和验证。 4. **MySQL数据库**:MySQL是一个开源的关系型数据库管理系统,用于存储用户账户信息。在登录注册系统中,我们需要...
分页查询是大型Web应用中常见的需求,SpringMVC结合SpringJDBC可以通过编写自定义的SQL语句或者使用存储过程来实现。例如,可以传递页码和每页大小作为参数,然后在SQL查询中使用LIMIT和OFFSET关键字进行分页。在...