Hibernate-Criteria查询(1)
来源:互联网 发布:excel数据筛选按钮 编辑:程序博客网 时间:2024/06/06 02:44
package junit.test;import static org.junit.Assert.*;import java.util.ArrayList;import java.util.List;import hibch06.dao.HibernateSessionFactory;import hibch06.entity.Dept;import hibch06.entity.Emp;import org.hibernate.Criteria;import org.hibernate.Session;import org.hibernate.criterion.Restrictions;import org.junit.Test;public class Hibch06Test { @Test public void test() { Session session=HibernateSessionFactory.getSession(); Criteria criteria=session.createCriteria(Dept.class); criteria.add(Restrictions.eq("deptno", new Byte("10")));//添加查询条件 List<Dept> list=criteria.list(); for (Dept dept : list) { System.out.println(dept.getDname()); } } @Test public void test2() { Session session=HibernateSessionFactory.getSession(); Criteria criteria=session.createCriteria(Dept.class); criteria.add(Restrictions.eq("deptno", new Byte("10")));//添加查询条件 criteria.add(Restrictions.eq("dname", "ACCOUNTING"));//添加查询条件 Dept dept=(Dept)criteria.uniqueResult(); System.out.println(dept.getDname()+" "+dept.getLoc()); } /* * 查询工资高于2000的员工 */ @Test public void test3(){ Session session=HibernateSessionFactory.getSession(); List<Emp> list=session.createCriteria(Emp.class) .add(Restrictions.gt("sal",2000D)) .list();//链式编程风格 System.out.println(list.size()); } @Test public void test4(){ Session session=HibernateSessionFactory.getSession(); List<Emp> list=session.createCriteria(Emp.class) .add(Restrictions.between("sal",3000D,5000D)) .list();//链式编程风格 for (Emp emp : list) { System.out.println(emp.getEname()+" "+emp.getSal()); } } /* * 查询不属于任何部门的员工 */ @Test public void test5(){ Session session=HibernateSessionFactory.getSession(); List<Emp> list=session.createCriteria(Emp.class) .add(Restrictions.isNull("dept")) .list();//链式编程风格 for (Emp emp : list) { System.out.println(emp.getEname()+" "+emp.getSal()); } } /* * 查询职务是经理的员工 */ @Test public void test6(){ Session session=HibernateSessionFactory.getSession(); List<Emp> list=session.createCriteria(Emp.class) .add(Restrictions.eq("job", "MANAGER").ignoreCase()) .list();//链式编程风格 for (Emp emp : list) { System.out.println(emp.getEname()+" "+emp.getSal()); } } /* * 查询职务是经理或者是销售的员工(in) */ @Test public void test7(){ List jobList=new ArrayList(); jobList.add("MANAGER"); jobList.add("SALESMAN"); Session session=HibernateSessionFactory.getSession(); List<Emp> list=session.createCriteria(Emp.class) .add(Restrictions.in("job", jobList))//集合 .list();//链式编程风格 for (Emp emp : list) { System.out.println(emp.getEname()+" "+emp.getJob()+" "+emp.getSal()); } } @Test public void test7_2(){ Session session=HibernateSessionFactory.getSession(); List<Emp> list=session.createCriteria(Emp.class) .add(Restrictions.or(Restrictions.eq("job", "MANAGER"), Restrictions.eq("job", "SALESMAN")))//两个条件,其中一个满足就可以了 .list();//链式编程风格 for (Emp emp : list) { System.out.println(emp.getEname()+" "+emp.getJob()+" "+emp.getSal()); } } //再加一个“CLERK”,当有多个条件进行"或"操作的时候,需使用Restrictions.disjunction()方法 @Test public void test7_3(){ Session session=HibernateSessionFactory.getSession(); List<Emp> list=session.createCriteria(Emp.class) .add(Restrictions.disjunction() .add(Restrictions.eq("job", "MANAGER")) .add(Restrictions.eq("job", "SALESMAN")) .add(Restrictions.eq("job", "CLERK")) ) .list(); } /* * 查询名字包含“S”的员工 * */ @Test public void test8(){ Session session=HibernateSessionFactory.getSession(); List<Emp> list=session.createCriteria(Emp.class) .add(Restrictions.ilike("ename", "%S%")) .list();//链式编程风格 for (Emp emp : list) { System.out.println(emp.getEname()+" "+emp.getJob()+" "+emp.getSal()); } } /* * 查询没有员工的部门 */ @Test public void test9(){ Session session=HibernateSessionFactory.getSession(); List<Dept> list=session.createCriteria(Dept.class) .add(Restrictions.isEmpty("emps")) .list(); for (Dept dept : list) { System.out.println(dept.getDname()); } }}
0 0
- Hibernate-Criteria查询(1)
- Hibernate(三)Criteria查询
- Hibernate(三)Criteria查询
- Hibernate-Criteria查询(4)Annotation
- hibernate框架Criteria查询(十)
- Hibernate Criteria 关联查询
- hibernate 动态查询 Criteria
- Hibernate 中的 Criteria 查询。
- Hibernate-Criteria 模糊查询
- Hibernate---Criteria 查询
- Hibernate-Criteria 模糊查询
- Hibernate Criteria 查询 详细参数
- hibernate --Criteria条件查询
- Hibernate-Criteria 模糊查询
- hibernate中criteria查询
- hibernate criteria查询
- Hibernate之 Criteria查询
- hibernate Example、Criteria 查询
- 数据结构--堆栈
- SQLyog常用快捷键
- 脉络清晰的BP神经网络讲解
- 《移动端签到》——用XML灵活配置变量
- 关于如何处理JSONObject.fromObject(Object obj)无法转换特殊日期(java.sql.Date,java.sql.Timestamp)格式的问题。
- Hibernate-Criteria查询(1)
- 关于浏览器的回退事件
- Linux命令学习
- 强悍的 Linux —— Linux 中 TTY 是什么意思
- 10grac修改public-ip vip-ip
- leetcode 73. Set Matrix Zeroes-矩阵置零|数组
- C#队列(Queue)
- Linux_2.6字符设备驱动实例
- 20、DOm--操纵元素属性