查询数据时,我们所使用的是Session的find()方法,并在当中指定HQL设定查询条件,查询的结果会装载在List对象中传回,您所需要的是将它们一一取出,一个最简单的例子如下:
成都创新互联成立于2013年,我们提供高端网站建设公司、成都网站制作、网站设计、网站定制、全网营销推广、小程序设计、微信公众号开发、seo优化服务,提供专业营销思路、内容策划、视觉设计、程序开发来完成项目落地,为成都卫生间隔断企业提供源源不断的流量和订单咨询。
HibernateTest.java
import onlyfun.caterpillar.*;import net.sf.hibernate.*;import net.sf.hibernate.cfg.*;import java.util.*; public class HibernateTest { public static void main(String[] args) throws HibernateException { SessionFactory sessionFactory = new Configuration().configure().buildSessionFactory(); Session session = sessionFactory.openSession(); List users = session.find("from User"); session.close(); sessionFactory.close(); for (ListIterator iterator = users.listIterator(); iterator.hasNext(); ) { User user = (User) iterator.next(); System.out.println(user.getName() + "\n\tAge: " + user.getAge() + "\n\tSex: " + user.getSex()); } }}
find()中的“from User”即HQL,User指的是User类别,藉由映射文件,它将会查询USER表格中的数据,相当于SQL中的SELECT * FROM USER,实际上我们的User类别是位于onlyfun.caterpillar下,Hibernate会自动看看import中的package名称与类别名称是否符合,您也可以直接指定package名称,例如:
session.find("from onlyfun.caterpillar.User");
看明白没?
临时表有两种类型:本地和全局。它们在名称、可见性以及可用性上有区别。本地临时表的名称以单个数字符号 (#) 打头;它们仅对当前的用户连接是可见的;当用户从 SQL Server 实例断开连接时被删除。全局临时表的名称以两个数字符号 (##) 打头,创建后对任何用户都是可见的,当所有引用该表的用户从 SQL Server 断开连接时被删除。
应该是全局临时表和本地临时表,全局临时表可以被创建临时表的连接和其它连接同时访问,本地临时表只能被创建这个临时表的连接所访问。
全局临时表的表名以##开头,比如##、##a、##1等都是合法的全局临时表表名;
本地临时表以#开头,比如#、#a、#1都是合法的本地临时表表名。