hibernate 调用 存储过程
首先建立存储过程:
我是oracle下建立第一个创建序列的存储过程。
CREATE OR REPLACE PROCEDURE "CREATE_SEQ" (v_seqname in varchar2) as
begin
execute immediate 'create sequence '||v_seqname||' start with 1 increment by 1 minvalue 1 maxvalue 99999 nocache';
end create_seq;
在程序中调用:
由于用的是ssh的框架,所以一直想通过createSQLQuery的方法调用,结果老是报错,无奈只好:
Connection conn =null; CallableStatement call =null;
try{
Stringname="seq001";
String sql ="{Call CREATE_SEQ(?)} ";
conn=this.getSession().connection();
call=conn.prepareCall(sql);
call.setString(1,name);
intcheck=call.executeUpdate();
if(check>0){ System.out.println("成功。");
}
}catch(Exceptione){
System.out.println("失败。");
}finally{
if(call!=null){
call.close();
}
if(conn!=null){
conn.close();
}
}其实这个是jdbc的思路,是hibernate的一个写法,如果有更好的方法,请告知,谢谢。