我玩的应用:

|
- import java.util.Iterator;
- import java.util.List;
- import java.util.Map;
- import org.hibernate.Hibernate;
- import org.hibernate.SQLQuery;
- import org.hibernate.Session;
- import org.hibernate.Transaction;
- import org.hibernate.transform.Transformers;
- import com.hibernate.bean.SqlQueryBean;
- import com.hibernate.bean.User;
- import com.hibernate.util.HibernateUtil;
- public class SqlQueryTest {
- public static void main (String [] args){
-
- sqlQueryAddScalar();
-
- }
-
- static void sqlQueryAddEntity(){
- //获取Hibernate Session对象
- Session session = HibernateUtil.getSession();
- //开始事务
- Transaction tx = session.beginTransaction();
- //编写SQL语句
- String sqlString = "select * from user";
- //以SQL语句创建SQLQuery对象
- List l = session.createSQLQuery(sqlString)
- //将查询ss实体关联的User类
- .addEntity("ss",User.class)
- //返回全部的记录集
- .list();
- //遍历结果集
- Iterator it = l.iterator();
- while (it.hasNext()){
- //因为将查询结果与Student类关联,因此返回的是Student集合
- User s = (User)it.next();
- String a = s.getName();
-
- System.out.println(a);
- }
- //提交事务
- tx.commit();
- session.close();
- }
-
- static void sqlQueryAddScalar(){
-
- //返回Object[]的遍历
-
- Session session=HibernateUtil.getSession();
-
- Transaction transaction=session.beginTransaction();
-
- String sql="select * from user";
-
- SQLQuery s=(SQLQuery) session.createSQLQuery(sql); //.setResultTransformer(Transformers.ALIAS_TO_ENTITY_MAP)
-
- s.addScalar("id",Hibernate.INTEGER); //列名, 数据类型
- s.addScalar("name",Hibernate.STRING);
-
- List list=s.list();
-
- Object[] objects=(Object[])list.get(0);
-
- System.out.println(objects[0]);
- System.out.println(objects[1]);
-
- //用MAP
-
- SQLQuery ss=(SQLQuery) session.createSQLQuery(sql).setResultTransformer(Transformers.ALIAS_TO_ENTITY_MAP);
-
- ss.addScalar("id",Hibernate.INTEGER);
- ss.addScalar("name",Hibernate.STRING);
-
- List list2=ss.list();
-
- Map map = (Map) list2.get(0);
-
- System.out.println(map.get("name"));
- System.out.println(map.get("id"));
-
- //用LIST
- SQLQuery s3=(SQLQuery) session.createSQLQuery(sql).setResultTransformer(Transformers.TO_LIST);
-
- s3.addScalar("id",Hibernate.INTEGER);
- s3.addScalar("name",Hibernate.STRING);
-
- List list3=s3.list();
-
- List list4=(List)list3.get(0);
-
- System.out.println(list4.get(0));
- System.out.println(list4.get(1));
-
- //用自定义的bean
-
- SQLQuery e=(SQLQuery) session.createSQLQuery(sql).setResultTransformer(Transformers.aliasToBean(SqlQueryBean.class));
-
- e.addScalar("id",Hibernate.INTEGER);
- e.addScalar("name",Hibernate.STRING);
-
- List r=e.list();
-
- SqlQueryBean sqb=(SqlQueryBean)r.get(0);
-
- System.out.println(sqb.getId());
- System.out.println(sqb.getName());
- }
-
- }
复制代码 from:http://go.cxweb.com.cn/d30gs
|
|