`

Spring JDBC 调用 procedure

    博客分类:
  • J2EE
阅读更多

import java.sql.CallableStatement;
import java.sql.Connection;
import java.sql.SQLException;
import java.util.HashMap;
import java.util.Map;
import org.apache.commons.logging.Log;
import org.springframework.dao.DataAccessException;
import org.springframework.jdbc.core.CallableStatementCallback;
import org.springframework.jdbc.core.CallableStatementCreator;
import org.springframework.jdbc.core.simple.SimpleJdbcDaoSupport;

import com.qeweb.redants.dao.ISequenceDao;

public class SequenceDaoImpl extends SimpleJdbcDaoSupport implements
        ISequenceDao {
    Log log = org.apache.commons.logging.LogFactory
            .getLog(SequenceDaoImpl.class);

    public String findSequence() {
        String result = (String) getJdbcTemplate().execute(
                new ProcCallableStatementCreator(),
                new ProcCallableStatementCallBack());
        log.info("new material Code:" + result);
        return result;
    }

    class ProcCallableStatementCreator implements CallableStatementCreator {
        public CallableStatement createCallableStatement(Connection connection)
                throws SQLException {
            String proc_name = "{call proc_sequence(?)}";
            CallableStatement callableStatement = connection
                    .prepareCall(proc_name);
            callableStatement.registerOutParameter(1, java.sql.Types.VARCHAR);
            return callableStatement;
        }
    }

    class ProcCallableStatementCallBack implements CallableStatementCallback {
        public Object doInCallableStatement(CallableStatement callableStatement)
                throws SQLException, DataAccessException {
            callableStatement.execute();
            String seq = callableStatement.getString(1);
            return seq;
        }
    }

}

分享到:
评论

相关推荐

    第四课:RPC与JDBC调用拦截1

    【第四课:RPC与JDBC调用拦截1】 在分布式系统中,RPC(Remote Procedure Call)框架如Dubbo是服务间通信的重要工具。本课程主要关注Dubbo的发送请求拦截和JDBC调用拦截,旨在增强系统监控和性能分析能力。 ### 1....

    spring-boot-jdbc:spring-boot-jdbc

    Spring Boot JDBC是Spring框架的一个重要组成部分,它简化了在Java应用程序中使用JDBC(Java Database Connectivity)进行数据库操作的方式。Spring Boot的设计理念是“约定优于配置”,因此它为开发者提供了开箱即...

    springboot整合mybatis调用oracle存储过程

    本文将深入探讨如何在Spring Boot项目中整合MyBatis,实现调用Oracle存储过程并处理游标返回的数据。 首先,我们需要在Spring Boot项目中引入相关的依赖。在`pom.xml`文件中添加Oracle JDBC驱动(ojdbc66-oracle...

    J2EE+Spring+Ibatis2+blazeds存储过程调用返回结果集

    Spring的 JDBC模块则可以帮助开发者更方便地与数据库进行交互,包括调用存储过程。 Ibatis,作为一个轻量级的持久层框架,与传统的ORM(对象关系映射)工具相比,提供了更大的灵活性。在调用存储过程时,Ibatis允许...

    jdbc连接oracle,执行存储过程,带数据库存储过程

    在给出的“简单的存储过程.txt”文件中,可能包含了一个示例存储过程的定义和如何通过JDBC调用它的Java代码。例如,一个存储过程可能用于插入数据: ```sql CREATE OR REPLACE PROCEDURE insert_user ( p_username...

    Spring开发指南

    Remoting部分则涉及到远程方法调用(Remote Method Invocation,简称RMI)和远程过程调用(Remote Procedure Call,简称RPC),以及如何在Spring中实现它们。 总的来说,Spring开发指南是对Spring框架从基础到高级...

    在Java的Spring框架的程序中使用JDBC API操作数据库

    本文将详细介绍如何在Spring中使用JDBC API,包括存储过程的调用和基本SQL语句的应用。 首先,使用Spring的JdbcTemplate类是执行SQL操作的核心。JdbcTemplate类负责处理所有与数据库的通信,包括打开和关闭连接、...

    Spring2.5参考手册

    4. **远程服务调用(Remote Procedure Call,RPC)**:Spring支持RMI(远程方法调用)和其他远程服务调用机制,如HTTP Invoker,使得分布式系统间的通信变得更加便捷。 5. **Web服务支持(Web Services)**:Spring...

    java调用oracle存储过程

    它可能包含一个方法,该方法通过JDBC调用存储过程,处理业务逻辑,然后返回响应给前端。 - `TimestampPropertyEditor.java`: 这可能是自定义的JavaBeans PropertyEditor,用于处理Oracle的TIMESTAMP类型。因为Java...

    Spring访问传入数组参数的Oracle存储过程

    在Java中,尤其是使用Spring框架时,我们可以借助JDBC或ORM(对象关系映射)工具如Hibernate来调用这些存储过程。 在Spring中,调用存储过程通常通过`JdbcTemplate`或`NamedParameterJdbcTemplate`类来实现。对于...

    基于Java的Spring4GWT.zip

    - **数据访问集成**:Spring支持多种持久化策略,如JDBC、ORM(Hibernate、MyBatis)等,提供事务管理功能。 2. **Google Web Toolkit (GWT)**: - **编译器**:GWT将Java代码编译成优化过的JavaScript,可以在...

    oracle jdbc pdf

    Oracle JDBC 支持调用数据库中的存储过程。这可以通过`CallableStatement`对象实现。 示例代码: ```java String sql = "{ CALL test_procedure(?, ?) }"; CallableStatement cstmt = conn.prepareCall(sql); cstmt...

    分布式开发项目spring+SpringMVc+mybatis+dubbo+redis+netty.rar

    MyBatis消除了几乎所有的JDBC代码和参数的手工设置以及结果集的检索,使得数据库操作更加简洁、高效。 3. **Dubbo**:Dubbo是阿里巴巴开源的高性能服务治理框架,主要用于实现服务间的远程调用。它支持RPC(Remote ...

    Spring and iBATIS

    Java的JDBC API尽管功能强大,但在实际应用中显得较为底层且复杂,因此业界出现了多种技术来增强其功能,如EJB、JDO、Hibernate、Toplink(来自Oracle)、iBATIS、SQLExecutor以及Spring框架提供的JDBC支持等。...

    Java远程方法调用.pdf

    尽管在现代Java企业应用中,Spring框架下的远程调用技术(如Spring Remoting)和各种微服务架构(如Spring Cloud)逐渐流行,但Java RMI因其简单和直接性,在某些场景下依然有着不可替代的作用。

    gwt(google web toolkit) 和 spring 在一起使用列子

    - **Spring-GWT-RPC**:GWT的Remote Procedure Call (RPC)机制可以与Spring的AOP和DI集成,实现服务端的Spring Bean作为GWT RPC的服务端点。这样,客户端可以直接调用服务端的业务逻辑,而无需关心服务的实现细节。...

Global site tag (gtag.js) - Google Analytics