关于oracle存储过程的调用(java)
来源:互联网 发布:苹果数据线头焊接 编辑:程序博客网 时间:2024/06/07 07:20
1:java 代码调用存储过程
public String getPriceByProcedureAndMaterialCodeAndCostType(String bridgeCode,
String materialCode, int costType, Date startDate, Date endDate) {
String procedure = "{call P_GET_HIGH_OR_LOW_PRICE(?,?,?,?,?,?)}";
Session session = this.hibernateTemplate.getSessionFactory().getCurrentSession();
Connection conn = session.connection();
CallableStatement cs = null;
try {
cs = conn.prepareCall(procedure);
cs.setString(1, bridgeCode);
cs.setString(2, materialCode);
cs.setInt(3, costType);
if(startDate != null){
cs.setDate(4, new java.sql.Date(startDate.getTime()));
}else{
cs.setDate(4, null);
}
if(endDate != null){
cs.setDate(5, new java.sql.Date(endDate.getTime()));
}else{
cs.setDate(5, null);
}
cs.registerOutParameter(6, Types.VARCHAR);
cs.executeUpdate();
String price_supplier = cs.getString(6);
return price_supplier;
} catch (SQLException e) {
e.printStackTrace();
return "";
} finally{
if(cs != null){
try {
cs.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
if(conn != null){
try {
conn.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
}
}
红色的是带有返回参数的。
2:java 调用方法
public String getMaterialIdFunction(String materialCode,Long supplierId) {
String value="";
//调用存储过程获取材质ID和分类Code
String procedure = "{ ? = call F_GET_MATERIAL_ID(?,?)}";
Session session = this.hibernateTemplate.getSessionFactory()
.getCurrentSession();
@SuppressWarnings("deprecation")
Connection conn = session.connection();
Date startDate=null;
Date endDate1=null;
try {
conn.setAutoCommit(true);
} catch (SQLException e1) {
e1.printStackTrace();
}
try {
CallableStatement cs = conn.prepareCall(procedure);
cs.registerOutParameter(1, Types.VARCHAR);
cs.setString(2, materialCode);
cs.setLong(3, supplierId);
cs.executeUpdate();
value=cs.getString(1);
cs.close();
session.flush();
session.clear();
} catch (SQLException e) {
e.printStackTrace();
}
return value;
}
红色的是调用方法后返回的值。
- 关于oracle存储过程的调用(java)
- 关于oracle的存储过程以及调用。
- 关于SPRING调用ORACLE的存储过程
- Java调用Oracle的存储过程(实例)
- java 调用oracle的存储过程
- java调用oracle存储过程的方法
- java调用oracle的存储过程
- java调用oracle的存储过程
- JAVA调用oracle的存储过程
- Java调用Oracle的分页存储过程
- java调用oracle的存储过程
- java调用Oracle数据库的存储过程
- (简)Oracle存储过程调用java
- java调用oracle存储过程
- java 调用 oracle 存储过程
- java调用存储过程(oracle)
- java调用oracle存储过程
- java 调用 oracle存储过程
- 关于Java的静态块、非静态块和静态方法
- Redis作者谈Redis应用场景
- 八大排序
- dmytrodanylyk/circular-progress-button源码解析(一)
- 视频直播-ijkplayer 集成全解
- 关于oracle存储过程的调用(java)
- Git命令详解
- self 和 super
- java常用数据结构常用方法
- 图的java实现
- Android OkHttp完全解析 是时候来了解OkHttp了
- centos 之nginx的安装使用
- Android开发之Tween(补间动画)完全解析(上)——xml文件配置的实现
- “拿来”主义有感