java 调用Oracle 存储过程 Jdbc/Hibernate

hibernate query调用oracle存储过程 使用hibernate的query调用oracle的存储过程/function,包含例子,源码以及数据库文件 立即下载

oracle 创建存储过程 两个参数 两个返回值

create or replace procedure PP_test(
                                              oiyear    in number,
                                              oimonth    in number,s_save out varchar2,s_update out varchar2) is
  nottzset_exception exception;
  eb exception;
begin

//查询插入的多少记录
select count(*) into s_save from pj_tempajbf temp  where temp.remark='save' and iyear=oiyear;
//查询更新的多少记录
 select count(*) into s_update from pj_tempajbf temp where temp.remark='update' and imonth=oimonth;


exception
  when others then
    rollback; /**/ /*异常处理,操作都不会被执行*/
    return;
end PP_test;

java 使用jdbc调用存储过程

//调用存储过程

   try {

            Class.forName(driver);
             conn = DriverManager.getConnection(url);

           String sql="{ call PP_test(?,?) }";

            CallableStatement call=conn.prepareCall(sql);

           //储存过程为两个参数
           call.setLong(3, 2011);
           call.setLong(4, 8);
           String[] s=new String[2];
           call.registerOutParameter(5,java.sql.Types.VARCHAR);  
           call.registerOutParameter(6,java.sql.Types.VARCHAR);  
           call.execute();

          //返回值
           s[0]=call.getString(5);
           s[1]=call.getString(6);
            log.debug("执行成功:" + sql);
        } catch (SQLException ex) {
            log.error("数据库执行出错"+ex.getMessage());
            throw ex;
        }finally{
            closeConnection(conn,pstmt,rs);
        }


      使用hibernate 基本一样

tx   =   session.beginTransaction();      
  Connection   conn=session.connection();      
 String sql="{ call PP_test(?,?) }";
  CallableStatement call=conn.prepareCall(sql);
           //储存过程为两个参数
           call.setLong(3, 2011);
           call.setLong(4, 8);
           String[] s=new String[2];
           call.registerOutParameter(5,java.sql.Types.VARCHAR);  
           call.registerOutParameter(6,java.sql.Types.VARCHAR);  
  call.executeUpdate();      
  tx.commit();      

使用hibernate调用oracle的存储过程 在hibernate中调用oracle中的存储过程的详细代码。可以借鉴使用,帮助学习。 立即下载

相关推荐

有限状态机FSM详解(一)

有限状态机在维基百科中的解释是: 有限状态机(英语:finite-state machine,缩写:FSM)又称有限状态自动机,简称状态机,是表示有限个状态以及在这些状态之间的转移和动作等行为的数学模型。 至于为什么要学FSM,FSM可以把模型的多状态、多状态间的转换条件解耦。可以使维护变得容易,代码也更加具有可读性,也更加艺术。 理解有限状态机首先需要理解整个模型。我们把灯的开关作为示例,...

benjonc的博客 5万+

Hibernate调用Oracle存储过程

准备工作 1、操作数据表 Oracle数据库scott用户下的EMP员工表 -- Create table create table EMP ( empno NUMBER(4) primary key, ename VARCHAR2(10), job VARCHAR2(9), mgr NUMBER(4), hiredate DATE, sal...

weixin_43094361的博客 1098

Android Qcom USB Driver学习(十三)

该系列文章总目录链接与各部分简介: Android Qcom USB Driver学习(零) Android Qcom USB Driver学习(八) Android Qcom USB Driver学习(九)deals with the USB Power Delivery resources used by one or more ports on the basis of the local device policy the basis of the local device policy.opera

Android驱动开发 2613

hibernate调用oracle的存储过程

1.hibernate dao层调用oracle存储过程 @Repository public class PcdmPeriodChartDao extends BaseDao { // 传入存储过程 和参数 public void executeVoidProcedureSql(final String queryString, final Object[] params) throws

my_name_nb的博客 731

从零开始的立绘拆包教程

蓝毒小天使天下第一! 本文拆包教程不限于明日方舟,在后面也会给出其他手游的拆包教程,例如少女前线 首先拆包最简单的无非就是拆取游戏资源,例如游戏立绘,音频,视频等,再深层次一点有拆取游戏配置文件,apk反编译得到部分源码 在本文,我们只介绍拆取游戏资源和对游戏资源的后期处理(因为另外两个讲道理我也没太搞懂,虽然可以提取游戏配置文件,但似乎大部分重要的数据都有加密,反编译出来的源码也只是部分,...

Conyrol的博客 9万+

我的世界进阶模组开发教程——制作机械动力附属模组

摘要: Create是Minecraft的机械动力模组,其代码结构分为多个关键模块: 数据生成系统:通过CreateRecipeProvider基类实现配方自动化生成,支持多步骤序列化装配配方(SequencedAssemblyRecipeGen),采用建造者模式链式调用; 注册管理:CreateRegistrate扩展了Registrate库,统一管理方块、流体、实体等注册,集成标签页分类和工具提示定制; 伤害系统:DamageTypeTagGen为机械伤害(如钻头、风扇火焰)定义原版兼容的标签; 客户端

qq_24992377的博客 2083

Hibernate调用Oracle的存储过程

  众所周知,当过多的使用存储过程,触发器等 数据库方言相关的应用时,应用程序的移植性会变差,特别是在Hibernate中使用这些,简直是讽刺,但是当今中国又有哪家公司做项目会关心应用程序的移植性呢?   现在看看Hibernate中对Oracle存储过程的调用.   1.plsql 代码    proc.plsql create Procedure proc() begin ...

weixin_33699914的博客 173

2.0 电子凸轮 西门子1500电子凸轮使用研究1

本文研究了S7-1500T电子凸轮同步控制技术,通过仿真实验得出以下结论:1)通过比例系数可调整凸轮曲线形状;2)解除同步需调用从轴其他运动指令;3)详细阐述了凸轮同步的5个实施步骤。重点分析了三种同步类型(主值距离同步、动态参数同步和直接同步)的特点及应用场景,并探讨了缩放系数、偏移量等参数对凸轮曲线的影响。同时介绍了凸轮应用模式及常见异常处理方法,为工程应用提供了重要参考。

qq_34047402的博客 809

用java调用oracle存储过程总结

声明:以下的例子不一定正确,只是为了演示大概的流程。 一:无返回值的存储过程存储过程为:CREATE OR REPLACE PROCEDURE TESTA(PARA1 IN VARCHAR2,PARA2 IN VARCHAR2)  ASBEGIN    INSERT INTO HYQ.B_ID (I_ID,I_NAME) VALUES (PARA1, PARA2);

jenny537的专栏 926

安路TangDynasty和FD和JTAG驱动器安装

安路FPGA产品矩阵包含SALPHOENIX高性能、SALEAGLE高性价比和SALELF低功耗三大系列,广泛应用于网络通信、消费电子等领域。配套的TangDynasty(TD)集成开发环境支持标准设计输入,提供完整优化流程与调试工具。简要介绍了TD 6.2.1版本的安装步骤。

wangjie36的博客 1038

DeepSeek 赋能太空探索:从轨道优化到星际开拓的 AI 革命

随着人工智能技术蓬勃发展,DeepSeek 在太空探索领域展现出巨大应用潜力。本文深入剖析 DeepSeek 技术核心,包括低功耗运算、开源生态等优势,阐述其与传统航天技术的差异。从航天器自主控制、深空探测、载人航天等关键环节,结合实时轨道调整、故障诊断修复等实例,揭示 DeepSeek 对航天任务效率与安全性的提升作用。同时探讨其应用面临的太空环境适应、伦理安全等挑战,展望技术演进方向及与前沿技术融合前景,展现 DeepSeek 为人类太空探索带来的变革与深远意义。

邓邓子的博客 2258

[亲测可用]hibernate调用Oracle存储过程|Spring Data JPA调用Oracle存储过程方法

前言 我们知道在plsql里可以通过下面方式执行存储过程,但是在代码里如何制作呢 begin P_DW_DM_BB_TV_ACCOUNT(202004270000) ; end; --或者 call P_DW_DM_BB_TV_ACCOUNT(202004270000) @Transactional @Modifying @Query public v...

小小鱼儿小小林的博客 1248

RU DOS版、EFI版32bit/64bit BIOS常用工具

DOS版、EFI版的RU工具,可用来查看IO、MEM、PCI、SMBIOS等资源。亲测在EFI SHELL下可用。

Hibernate如何调用存储过程

  Connection   con   =   session.connect();       CallableStatement   proc   =   null;       con   =   connectionPool.getConnection();       proc   =   con.prepareCall("{   call   set_death_age(?,   ?

lanbosan的专栏 7万+

STM32F407中文手册

STM32f407中文手册 本参考手册面向应用开发人员,提供有关使用 STM32F405xx/07xx、STM32F415xx/17xx、 STM32F42xxx 和 STM32F43xxx 微控制器存储器与外设的完整信息。STM32F405xx/07xx、STM32F415xx/17xx、STM32F42xxx 和 STM32F43xxx 构成一个微 控制器系列,各产品具有不同的存储器大小、封装和外设。有关订购信息以及器件的机械与电气特性,请参见数据手册。有关 ARM Cortex™-M4F 内核的信息,请参见《Cortex™-M4F 技术参考手册》。

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

hql调用mysql存储过程_HIbernate 调用Oracle存储过程

1、创建存储过程Proc代码createorreplaceprocedurechangesalary(p_employeeidnumber,p_newsalarynumber)isbeginupdateemployeessetsalary=p_newsalarywhereemployee_id=p_employeeid;ifsql%notfoundthenra...

weixin_34447182的博客 148

Data-Structures-and-Algorithm-Analysis-in-Java.pdf

作者: Weiss, Mark A. 出版社: Addison Wesley Data Structures and Algorithm Analysis in Java is an “advanced algorithms” book that fits between traditional CS2 and Algorithms Analysis courses. In the old ACM Curriculum Guidelines, this course was known as CS7. This text is for readers who want to learn good programming and algorithm analysis skills simultaneously so that they can develop such programs with the maximum amo...

hibernate oracle 存储过程 结果集,HIbernate调用Oracle存储过程

1、创建存储过程 Proc代码 create or replace procedure changesalary(p_employeeid number, p_newsalary number) is be1、创建存储过程Proc代码create or replace procedure changesalary(p_employeeid number, p_newsalary number) ...

weixin_42544461的博客 141

oracle中调用mysql_J2EE之oracle、mysql存储过程调用

最近几天在研究hibernate、JPA对存储过程的调用,主要是针对有返回结果集的存储过程的调用方法,个人感觉存储过程是个好东西,虽然说heibernate对数据访问封装的比较不错,再加上他的缓存机制,确实很多情况下足够了,不过存储过程还是有他的用武之地,如果能用他提高性能,为何不用....好吧,不讨论他有没有用处,掌握了以后备用也是不错的选择,重点看看oracle的存储过程调用,mysql的要简...

weixin_36064512的博客 248

java hibernate调用oracle存储过程,使用JPA和Hibernate调用存储过程的最佳方法 - Vlad Mihalcea...

在本文中,您将学习使用JPA和Hibernate时调用存储过程的最佳方法,以便尽快释放底层JDBC资源。存储过程调用如何与JPA和Hibernate一起使用要使用JPA调用存储过程或数据库函数,可以使用StoredProcedureQuery如以下示例所示:StoredProcedureQuery query = entityManager.createStoredProcedureQuery("...

weixin_33826994的博客 519

Java调用Oracle存储过程

场景 在Oracle里写个存储过程,它的参数有三类IN、OUT、IN OUT,然后在Hibernate的Session上下文中调用存储过程。 方法 直接JDBC的方式调用存储过程,使用Session#doWork(Work work)。 示例 创建示例存储过程 过程很简单,有几个小点需要注意: 一个异常:ORA-06502: PL/SQL: 数字或值错误 :  字符串缓冲区太小一

一步一个脚印的专栏 1943

JDBC+Hibernate将Blob数据写入Oracle

    Oracle的Blob字段比较特殊,他比long字段的性能要好很多,可以用来保存例如图片之类的二进制数据。   写入Blob字段和写入其它类型字段的方式非常不同,因为Blob自身有一个cursor,你必须使用cursor对blob进行操作,因而你在写入Blob之前,必须获得cursor才能进行写入,那么如何获得Blob的cursor呢?  这需要你先插入一个empty的blob,这将创建一

键者天行 5717

j2ee oracle mysql_J2EE之oracle、mysql存儲過程調用

最近幾天在研究hibernate、JPA對存儲過程的調用,主要是針對有返回結果集的存儲過程的調用方法,個人感覺存儲過程是個好東西,雖然說heibernate對數據訪問封裝的比較不錯,再加上他的緩存機制,確實很多情況下足夠了,不過存儲過程還是有他的用武之地,如果能用他提高性能,為何不用....好吧,不討論他有沒有用處,掌握了以后備用也是不錯的選擇,重點看看oracle的存儲過程調用,mysql的要簡...

weixin_39620845的博客 123

Java程序中调用Oracle存储过程

一:无返回值的存储过程 存储过程为: CREATE OR REPLACE PROCEDURE TESTA(PARA1 IN VARCHAR2,PARA2 IN VARCHAR2) AS BEGIN INSERT INTO HYQ.B_ID (I_ID,I_NAME) VALUES (PARA1, ...

阿杰工作专栏 252

Oracle 存储过程,Hibernate 调用存储过程,JDBC调用存储过程,Oracle 动态SQL

Oracle 存储过程学习 目录 Oracle 存储过程.............................................................................................................................. 1 Oracle 存储过程基础知识.........................

《春馨梦》的专栏 1202

如何使用JPA和Hibernate调用Oracle存储过程和函数(转载)

介绍 本文是与从Hibernate调用各种关系数据库系统存储过程和数据库函数相关的一系列帖子的一部分。写下来的原因是因为有许多与底层JDBC驱动程序支持相关的特性,并不是每个关系数据库都支持每个JPA或Hibernate特性。 Oracle存储过程 Oracle支持存储过程和函数,因此首先我们将从以下存储过程开始,该过程输出一个简单的值。 Oracle存储过程输出一个简单的值 CRE...

RaynorZong的博客 2891
上一篇: Common-lang包中StringUtils用法
下一篇: java使用jdbc连接postgresql数据库
木卫二号Coding
博客等级 码龄18年 263粉丝 228原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值