============jdbc==========================================
--java代码:一个输出参数--
String connURL = null;
Connection conn = null;  
connURL = "jdbc:sqlserver://192.168.1.157;instanceName=eqmis;DatabaseName=eqmis";
String sqldriver = "com.microsoft.sqlserver.jdbc.SQLServerDriver";
Class.forName(sqldriver);// 注册加载驱动程序
conn = DriverManager.getConnection(connURL, "sa","1.0");
 CallableStatement proc = conn.prepareCall("{ call test(?) }");    //只有一个输出参数
proc.registerOutParameter(1,Types.VARCHAR);
proc.execute();
ystem.out.println(proc.getString(1));

--储存过程(mssql)一个输出参数--
if exists(select * from sysobjects where name='test')
drop proc test
go
create proc test
@mycarID char(19)output--输出参数  
as
declare @r numeric(15,8),--接收随机数
@tempr varchar(20)--转换随机数
select @r=RAND((datepart(mm,getdate())*100000)+(DATEPART(SS,GETDATE())*1000)+
(DATEPART(MS,GETDATE())))
select @tempr=CONVERT(varchar(20),@r)
select @mycarID= '1010 3576'+' '+SUBSTRING(@tempr,3,4)+' '+SUBSTRING(@tempr,7,4)
return
go

-------java代码:一个输入参数和一个输出参数---
String connURL = null;
Connection conn = null;
connURL = "jdbc:sqlserver://192.168.1.157;instanceName=eqmis;DatabaseName=eqmis";
String sqldriver = "com.microsoft.sqlserver.jdbc.SQLServerDriver";
Class.forName(sqldriver);// 注册加载驱动程序
conn = DriverManager.getConnection(connURL, "sa","1.0");
CallableStatement proc = conn.prepareCall("{ call test(?,?) }");    
proc.setString(1,"12345");
proc.registerOutParameter(2,Types.VARCHAR);//第二个是输出参数
proc.execute();
 System.out.println(proc.getString(2));

--储存过程(mssql)一个输入参数和一个输出参数---
if exists(select * from sysobjects where name='test')
drop proc test
go
create proc test
@getIndex varchar(5),--输入参数
@mycarID char(19)output--输出参数   
as
declare @r numeric(15,8),--接收随机数
@tempr varchar(20)--转换随机数
select @r=RAND((datepart(mm,getdate())*100000)+(DATEPART(SS,GETDATE())*1000)+
(DATEPART(MS,GETDATE())))
select @tempr=CONVERT(varchar(20),@r)
select @mycarID= @getIndex+' '+SUBSTRING(@tempr,3,4)+' '+SUBSTRING(@tempr,7,4)
return
go

=====jap:=================================

-------JPA调用储存过程(mssql)注意:EJB3不能调用以OUT参数返回值的存储过程。--
create proc testJpa2
@acode varchar(20)
as
begin
select * from pubuser where acode=@acode
end
go

-------jap:dao--------------------------
String jpql= "{call testJpa2(?)}";
Query obj = em.createNativeQuery(jpql);
bject[] params=new Object[]{'1'}
if (params != null && params.length > 0) {
for (int i = 0; i < params.length; i++) {
obj.setParameter(i + 1, params[i]);
}
}
obj.getResultList().toString();

转载于:https://www.cnblogs.com/qgc88/p/3443037.html

JDBC和JPA调用储存过程 接收存储过程有返回值相关推荐

  1. oracle java存储过程返回值_java程序调用Oracle 存储过程 获取返回值(无返回,非结果集,结果集)...

    java程序调用Oracle 存储过程 获取返回值(无返回,非结 果集,结果集) oracle中procedure是不能有返回值的,要想返回值,就得有 输出参数,同样要想返回记录集,可以把游标类型作为 ...

  2. 将存储过程的返回值赋给变量

    1.OUPUT参数返回值 复制代码代码如下: CREATE PROCEDURE [dbo].[nb_order_insert]( @o_buyerid int , @o_id bigint OUTPU ...

  3. 关于ExecuteNonQuery执行存储过程的返回值 、、实例讲解存储过程的返回值与传出参数、、、C#获取存储过程的 Return返回值和Output输出参数值...

    关于ExecuteNonQuery执行存储过程的返回值 用到过ExecuteNonQuery()函数的朋友们在开发的时候肯定这么用过. if(cmd.ExecuteNonQuery("xxx ...

  4. SQLServer存储过程的返回值 查询分析器/程序

    1.存储过程没有返回值的情况(即存储过程语句中没有return之类的语句) 用方法 int count = ExecuteNonQuery(..)执行存储过程其返回值只有两种情况  (1)如果通过查询 ...

  5. 在 C# 中如何获取存储过程的返回值 ?

    咨询区 GurdeepS: 我有下面的查询语句: set ANSI_NULLS ON set QUOTED_IDENTIFIER ON goALTER PROCEDURE [dbo].[Validat ...

  6. java程序调用Oracle 存储过程 获取返回值(无返回,非结果集,结果集)

    oracle中procedure是不能有返回值的,要想返回值,就得有输出参数,同样要想返回记录集,可以把游标类型作为输出参数. 下面是详细情况说明: 一:无返回值的存储过程调用 存储过程: creat ...

  7. oracle存储过程没有返回值,Java调用Oracle存储过程(无返回值)

    无返回值: 1:创建存储过程 此存储过程向表中插入一条数据 create or replace procedure demo_procedure(id varchar2,name varchar2,a ...

  8. cmd管道无法接收特定程序返回值_渗透不会反弹shell?来教你写一个cmd的shell

    渗透不会反弹shell?来教你写一个cmd的shell 包含的库: #include #include #include #include #include #pragma comment(lib, ...

  9. Flutter路由管理和接收页面的返回值

    Flutter使用Navigator进行路由管理. 跳转页面 使用Navigator的push方法进行跳转.可以看到总共有6个push方法 1.push(route) 通过路由跳转 通过路由进行跳转 ...

最新文章

  1. 老板说我最近飘了,都敢用 MySQL 实现分布式锁了
  2. python subprocess.Popen 实时输出 stdout
  3. 1D target tensor expected, multi-target not supported
  4. 计算机视觉——百度百科
  5. The 2018 ACM-ICPC Asia Qingdao Regional Contest, Online
  6. java获取数组穷举_请教一下两个数组各取一个元素生成新的数组的穷举算法设计?...
  7. 三星GalaxyNote 10 Plus官方图曝光:前置相机竟换成了单摄?
  8. 使用jQuery Html() 作为客户端htmlEncode的问题
  9. HP 360G5 IO性能提高方法
  10. python工资一般多少西安-西安学习Python哪里好多少钱
  11. Kubernetes学习笔记 黑马程序员
  12. 串口uart编程——基于imx6ull
  13. 关于项目估算的微博讨论
  14. android画了一个笑脸
  15. 实时语音转文字app简易demo(这里使用了阿里的接口,可以替换成科大讯飞)
  16. Google hacking能做什么以及对应的语法
  17. 机器学习入门基础(一)
  18. Franka Emika Panda 机械臂环境配置
  19. 【论文阅读术语】benchmark、baseline、backbone、ground truth
  20. 【工程数学】笔记2:数学物理方程

热门文章

  1. opencv学习笔记01
  2. android系统图标大小
  3. linux服务器i o模型,高性能服务器框架--I/O模型
  4. c语言综合编程,C语言编程入门——综合练习(一)
  5. cba篮球暂停次数和时间_CBA一场比赛每支球队可以叫多少次暂停
  6. php延迟静态绑定,延迟静态绑定——static
  7. Python和js之间的转换
  8. 数组模拟乘法(大数乘法)
  9. 洛谷P1007 独木桥(贪心)
  10. 第 20 次 CSP认证 202009-4 星际旅行