Hibernate 调用 MySQL 存储过程

小弟 创建了个存储过程,用来返回是否有新通知(包括新留言,新短信..涉及到好多表),但是在 java 里面用 Hibernate 调用就不会调了,
在网上查了下,都是得在某个VO类的.hbm 内配置存贮过程的,我这个存储过程涉及到多张表,不是那种一个类下的,该怎么去用Hibernate调用啊?

急啊

谢谢`

在后台直接调用:

tx = session.beginTransaction();
Connection con=session.connection();

//procName 是存储过程的名称,后面也可以跟参数,也可以不跟参数
String procedure = "{call procName (?) }";
CallableStatement cstmt = con.prepareCall(procedure);
cstmt.setInt(1,0); //设置参数
cstmt.executeUpdate();
tx.commit();

<!--调用存储过程就在这里配 -->








{ call SP_get_UserInfo() }

调用存储过程的Java代码:

    Session querySession = HibernateSessionFactory.getSession();
    querySession.clear();
    List lst = uerySession.getNamedQuery("getUser").list();
    for(int i=0;i<lst.size();i++)
    {
        usr=(User)lst.get(i);
        System.out
        .println(usr.getId() + " " + usr.getName() + " "
                + usr.getSex() + " " + usr.getBorn() + " "
                + usr.getAddress());
    }
   HibernateSessionFactory.closeSession();

你重新搞一个类,把涉及到的字段做成属性

看看文章

http://www.blogjava.net/Unmi/archive/2008/06/23/210130.html

http://tech.it168.com/j/2006-05-30/200605301146190.shtml