千家信息网

java jdbc 执行oracle存储过程

发表于:2026-11-02 作者:千家信息网编辑
千家信息网最后更新 2026年11月02日,java代码public Connection conn() {try {// 第一步:加载JDBC驱动Class.forName("oracle.jdbc.driver.OracleDriver")
千家信息网最后更新 2026年11月02日java jdbc 执行oracle存储过程


java代码

public Connection conn() {
try {
// 第一步:加载JDBC驱动
Class.forName("oracle.jdbc.driver.OracleDriver");
// 第二步:创建数据库连接
con = DriverManager.getConnection("jdbc:oracle:thin:@192.177.2.2:1521/db", "test","test");
return con;
} catch (Exception e) {
e.printStackTrace();
return null;
}
}



public List getCanorderTemplateBySms(String version, String orderFrom,String acco, String accoType, String tunnelType, String callFrom) {
CallableStatement callStat=null;
ResultSet rs=null;
List list=new ArrayList();
String sql = "{call pkg_customerorder.sp_sms_canorder2(?,?,?,?,?,?,?,?,?)}";
try {
callStat = this.conn().prepareCall(sql);
callStat.setString(1,version);

//out
callStat.registerOutParameter(2,oracle.jdbc.OracleTypes.VARCHAR);
callStat.registerOutParameter(3,oracle.jdbc.OracleTypes.VARCHAR);
callStat.registerOutParameter(4,oracle.jdbc.OracleTypes.CURSOR);
//in
callStat.setString(5, orderFrom); //可订制渠道 1:客服 2:网站 3: 网站和客服
callStat.setString(6, acco);//账号
callStat.setString(7, accoType);//1代表客户编号 2代表基金账号
callStat.setString(8,tunnelType); //通道类别 0:不分通道 1:普通通道 2:专户通道
callStat.setString(9, callFrom);//调用恒生的接口需传入固定的参数9
callStat.execute();

String result= callStat.getString(2);//获得返回参数 返回代码'0000'表示成功

if(result!=null && "0000".equals(result.trim())){
rs=(ResultSet)callStat.getObject(4);
while(rs.next()){
TaskTemp taskTemp = new TaskTemp();
if("1".equals(rs.getString(3).trim())){ //基金客户是否可订制: 0-不可订制 1-可订制
taskTemp.setTaskcode(rs.getString(1));
taskTemp.setTaskname(rs.getString(2));
taskTemp.setBusinsubtype(rs.getString(15)); //分类编号 需要明天核对
taskTemp.setBusinsubname(rs.getString(16)); //分类名称 需要明天核对
list.add(taskTemp);
}
}
}
} catch (SQLException e) {
e.printStackTrace();
}
return list;
}



存储过程

/*
* 如下接口为外围的封装接口(入参全部为字符串),主要供友商使用,内部不推荐使用
* 功能:查询客户当前可订制的短信模板
* 入参: sInVersion 版本信息
* sOrderFrom 可订制渠道
* sAcco 账号
* sAccotype 账号类型 1-客户编号 2-基金账号 3-交易账号(暂不使用)
* nTunnelType 通道类型 0:不分通道;default 1:普通通道; 2:专户通道;
* callFrom 调用来源(恒生系统调用接口不用传参数,佳锐等非恒生系统调用需传入值9)
* 出参: sOutResultCode 返回代码 返回代码'0000'表示成功
* sOutResultInfo 返回信息 成功则返回'成功',否则返回具体失败原因
*/
procedure sp_sms_canorder2(
sInVersion in varchar2, --版本信息
sOutResultCode out varchar2,
sOutResultInfo out varchar2,
curOutResult out refcusor,
sOrderFrom in varchar2, --可订制渠道
sAcco in varchar2,
sAccotype in varchar2,
nTunnelType in pls_integer := 0,--0:不分通道;default
--1:普通通道;
--2:专户通道;
callFrom in varchar2 default '5'
);

通道 账号 成功 代码 客户 接口 普通 专户 信息 参数 基金 渠道 恒生 代表 版本 类型 系统 网站 分类 过程 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 科技金融是不是互联网金融 互联网扶贫科技 网络科技有限互联网 广州互联网络科技有限公司 易通互联网络科技有限公司 唐信互联网科技 大连 互联网科技公司介绍 卫星互联网科技股票 天速互联网络科技有限公司 以后互联网后是啥科技 常德市电业局互联网科技部 全球顶尖互联网科技公司 晓花互联网科技有限公司网址 互联网科技人工智能实验室 四川慕妮娅互联网科技有限公司 互联网科技大赛获奖感言 互联网科技如何创业 互联网科技公司营业执照怎么办理 2021互联网科技公司排名 互联网金融科技元年 百单网互联网科技有限公司 智能科技公司是互联网公司吗 北京互联网科技有限公司 互联网金融科技委员会 互联网时代科技改变生活 赶超互联网科技 微信多开 企晟互联网信息科技有限公司 互联网公司高科技产品 科技和互联网行业的特点 北京品多多互联网科技有限公司
0