package com.zxd.test; import java.util.List; import org.hibernate.HibernateException; import org.hibernate.Query; import org.hibernate.Session; import org.hibernate.SessionFactory; import org.hibernate.cfg.Configuration; import com.zxd.bean.House; import com.zxd.util.QueryProperty; /** * HQL封闭查询的测试类 * @author zhang * */ public class TestHouse { public static void main(String[] args) { //公共的成员变量 SessionFactory sf = null; Session session = null; QueryProperty qp = new QueryProperty(); //封装查询的数据 qp.setTitle("%好房%"); qp.setStreet_id("1002"); qp.setType_id("1004"); qp.setLow_price(20); qp.setHigh_price(200); qp.setSmall_floorage(50); qp.setBig_floorage(180); //HQL语句 StringBuffer sb = new StringBuffer(); sb.append("from House where "); sb.append("(title like :title) "); sb.append("and (type_id like :type_id) "); sb.append("and (street_id like :street_id) "); sb.append("and (price between :low_price and :high_price) "); sb.append("and (floorage between :small_floorage and :big_floorage)"); try { //开始执行查询 sf = new Configuration().configure().buildSessionFactory(); session = sf.openSession(); Query query = session.createQuery(sb.toString()); query.setProperties(qp); List<House> list = query.list(); //第一种用:的循环 /*for(House house:list){ System.out.println("标题是:"+house.getTitle()); System.out.println("面积是:"+house.getFloorage()); System.out.println("价格是:"+house.getPrice()); System.out.println("区是:"+house.getStreet().getDistrict().getName()); System.out.println("街道是:"+house.getStreet().getName()); System.out.println("----------------------------------"); }*/ //第二种循环 for(int i = 0;i<list.size();i++){ System.out.println("标题是:"+list.get(i).getTitle()); System.out.println("面积是:"+list.get(i).getFloorage()); System.out.println("价格是:"+list.get(i).getPrice()); System.out.println("区是:"+list.get(i).getStreet().getDistrict().getName()); System.out.println("街道是:"+list.get(i).getStreet().getName()); System.out.println("----------------------------------"); } } catch (HibernateException e) { // TODO Auto-generated catch block e.printStackTrace(); }finally{ session.close(); sf.close(); } } }
위 예에서 첫 번째 유형의 루프는 제가 기억하지 못하는 것입니다. 키 문자 ":"를 사용합니다. 일반적으로 이 유형의 루프는 컬렉션(Listb1fa84c93255d82379588dbbb47aef0e, Map)을 탐색하는 데 사용됩니다. 사용하기가 매우 편리합니다.
두 번째 유형의 루프는 일반적인 루프입니다. 이는 Java에서 가장 일반적인 for 루프입니다.
Java의 두 for 루프를 소개하는 더 많은 관련 기사를 보려면 PHP 중국어 웹사이트를 주목하세요!