我是hibernate的初学者,直到这个日期我都没有遇到过存储过程。
有人可以告诉我如何在Hibernate中执行以下操作, 此存储过程返回三个字段
date, balance, name_of_person
执行程序'dfd''fdf''34'
我是否需要以bean具有以下字段的方式创建bean: 日期,余额,name_of_person
我是否需要创建属性文件?
是否可以使用Criteria在hibernate中执行过程?
如果我是NativeQuery是唯一的选项,那么如何创建属性文件,因为我没有这样的表作为程序的结果
是否可以单独使用本机查询,不使用任何bean或属性文件,并打印结果
答案 0 :(得分:7)
这是一个简单的例子: -
Hibernate映射文件
<hibernate-mapping>
<sql-query name="mySp">
<return-scalar column="date" type="date" />
<return-scalar column="balance" type="long" />
<return-scalar column="name_of_person" type="string" />
{ call get_balance_sp :name }
</sql-query>
</hibernate-mapping>
<强>代码强>
List<MyBean> list = sessionFactory.getCurrentSession()
.getNamedQuery("mySp")
.setParameter("name", name)
.setResultTransformer(Transformers.aliasToBean(MyBean.class))
.list();
Bean类
此bean保存存储过程的结果。字段名称必须与Hibernate映射文件中的列名匹配。
public class MyBean {
private Date date;
private Long balance;
private String name_of_person;
// getters and setters
}