读书人

hibernate里如何调用存储过程

发布时间: 2012-08-30 09:55:54 作者: rapoo

hibernate里怎么调用存储过程

Session session = HibernateSessionFactory.getSession(); Connection con=session.connection();   //一定要有 String procedure = "{call Rtest(?,?,?)}";  CallableStatement cstmt = null;  ResultSet rs = null; try {      cstmt = con.prepareCall(procedure);  //调用存储过程     //hibernate中一般问号都是从0开始的,但是sql里是从1开始的     cstmt.setString(1,"2007-9-1");     cstmt.setString(2,"2007-9-17");  //存储过程里的参数是datetime类型,sql可以自动把String类型转换但是必须是数据库中要的格式 2007/9/7,2007-9-1 都可以     cstmt.setString(3,"230102");    rs = cstmt.executeQuery();   //执行         while(rs.next()){        System.out.println(rs.getInt(2));  //读取    } }finally {     session.close();             //关闭session }

读书人网 >软件架构设计

热点推荐