nameQuery

/**
* 该方法 用于测试 nameQuery
*/
public void testNameQuery(){
String value = "001";
HibernateTemplate ht = this.getHibernateTemplate();
List list = ht.findByNamedQueryAndNamedParam("getUserInfo",
"id", value);
for(int i = 0; i < list.size() ; i ++){

Object[] obj =(Object[]) list.get(i);
System.out.println(" : " + obj[0]);
System.out.println(" : " + obj[1]);
System.out.println(" : " + obj[2]);

}

}

public void testNameQuery2(){
String[] param = {"id","name"};
String[] value = {"001","sunjb"};

HibernateTemplate ht = this.getHibernateTemplate();
List list = ht.findByNamedQueryAndNamedParam("getUserList",
param, value);
for(int i = 0; i < list.size() ; i ++){

Object[] obj =(Object[]) list.get(i);
System.out.println(" : " + obj[0]);
System.out.println(" : " + obj[1]);


}

}

<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN"
"http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
<!--
Mapping file autogenerated by MyEclipse Persistence Tools
-->
<hibernate-mapping>
<class name="com.jsj.user.vo.UserInfoVo" table="POCC_USER_INFO" schema="scott">
<comment>用户信息表</comment>
<id name="id" type="java.lang.String">
<!--
<column name="ID" length="40" />
<generator class="uuid.string" />
-->
</id>

<property name="memo" type="java.lang.String">
<column name="MEMO" length="40">
<comment>备注</comment>
</column>
</property>
</class>

<!-- 定义查询 语句 -->
<sql-query name="getUserInfo" >
<![CDATA[
select id,name,password from pocc_user_info where id = :id
]]>
<return-scalar column="id" type="string"/>
<return-scalar column="name" type="string"/>
<return-scalar column="password" type="string"/>

</sql-query>

<sql-query name="getUserList" >
<return alias="p1" class="com.jsj.user.vo.UserInfoVo" />
<return alias="p2" class="com.jsj.user.vo.UserInfoVo" />
<![CDATA[
select p1.*,p2.*
from pocc_user_info p1,pocc_user_info p2
where p1.id = :id and p2.name = :name
]]>



</sql-query>

</hibernate-mapping>

原文地址:https://www.cnblogs.com/xigua1hao/p/3675655.html