007——hibernate 执行hql语句
//查询总人数 public void findCout(){ Session session = HbiUtil.getSession(); session.beginTransaction(); String hql = "select count(*) from Commpany"; Query query = session.createQuery(hql); //number 是所有的int类型的基类 范围更大 防止 溢出 Number number = (Number) query.uniqueResult(); System.out.println(number.intValue()); } return number.intValue(); ---------------------------------------------------------------------------------------------- //查询一列 public void finArray(){ Session session = HbiUtil.getSession(); session.beginTransaction(); String hql = "select c.name from Commpany c"; Query query = session.createQuery(hql); List list = query.list(); for (int i = 0; i < list.size(); i++) { System.out.println(list.get(i).toString()); } } ---------------------------------------------------------------------------------------------- //查询两列 public void findObject(){ Session session = HbiUtil.getSession(); session.beginTransaction(); String hql = "select c.name,c.id from Commpany c"; Query query = session.createQuery(hql); Listlist = query.list(); // for (Iterator iterator = list.iterator(); iterator.hasNext();) { // Object[] objects = (Object[]) iterator.next(); //// String cname = (String) objects[0]; //// Integer id = (Integer) objects[1]; //// System.out.println(cname+"---"+id); // System.out.println(objects[0]+"--"+objects[1]); // } for (int i = 0; i < list.size(); i++) { System.out.println(list.get(i)[0]+"---"+list.get(i)[1]); } } ---------------------------------------------------------------------------------------------- //map集合 public void findMap(){ Session session = HbiUtil.getSession(); session.beginTransaction(); String hql = "select new Map(c.name as name,c.id as id) from Commpany c"; Query query = session.createQuery(hql); Listlist = query.list(); for (int i = 0; i < list.size(); i++) { Map map = list.get(i); System.out.println(map.get("name")+"-----------------"+map.get("id")); } } ---------------------------------------------------------------------------------------------- //条件查询 public void findWhere(){ Session session = HbiUtil.getSession(); String hql = "from Commpany where name=?"; Query query = session.createQuery(hql); query.setString(0, "sdf"); List list = query.list(); for (int i = 0; i < list.size(); i++) { System.out.println(list.get(i).getName()); } } ---------------------------------------------------------------------------------------------- //模糊查询 public void findByCondition(){ Session session = HbiUtil.getSession(); String hql = "select c.name from Commpany c where c.name like ? "; Query query = session.createQuery(hql); query.setString(0, "x%"); List list = query.list(); for (int i = 0; i < list.size(); i++) { System.out.println(list.get(i).toString()); } } ---------------------------------------------------------------------------------------------- //sql测试 public void findBySql(){ Session session = HbiUtil.getSession(); String sql = "select * from commpany_01"; SQLQuery sqlQuery = session.createSQLQuery(sql);//不同 sqlQuery.addEntity(Commpany.class);//结合反射 List list = sqlQuery.list(); for (int i = 0; i < list.size(); i++) { System.out.println(list.get(i).getId()+"--"+list.get(i).getName()); } } ---------------------------------------------------------------------------------------------- //批量删除 public void del(){ Session session = HbiUtil.getSession(); session.beginTransaction(); String hql = "delete from Commpany c where c.id<2"; Query query = session.createQuery(hql); int count = query.executeUpdate(); System.out.println(count); session.getTransaction().commit(); session.close(); } ---------------------------------------------------------------------------------------------- //批量添加 public void add(){ Session session = HbiUtil.getSession(); session.beginTransaction(); for (int i = 0; i < 100; i++) { Commpany commpany = new Commpany(); commpany.setName("xushuyi"+i); session.save(commpany); if(i ==0){ session.flush(); session.clear(); } } session.getTransaction().commit(); session.close(); }