// Path: chapter10/src/main/java/com/packt/pfblueprints/dao/util/HibernateUtil.java
// public class HibernateUtil {
// 
//     private static final SessionFactory sessionFactory = buildSessionFactory();
// 
//     private static SessionFactory buildSessionFactory() throws HibernateException {
//         Configuration configuration = new Configuration().configure();
//         // configures settings from hibernate.cfg.xml
// 
//         StandardServiceRegistryBuilder serviceRegistryBuilder = new StandardServiceRegistryBuilder();
// 
//         // If you miss the below line then it will complain about a missing dialect setting
//         serviceRegistryBuilder.applySettings(configuration.getProperties());
// 
//         ServiceRegistry serviceRegistry = serviceRegistryBuilder.build();
//         return configuration.buildSessionFactory(serviceRegistry);
//     }
// 
//     public static SessionFactory getSessionFactory() {
//         return sessionFactory;
//     }
// 
//     public static void shutdown() {
//         // Close caches and connection pools
//         getSessionFactory().close();
//     }
// 
// }
// 
// Path: chapter10/src/main/java/com/packt/pfblueprints/model/Product.java
// @Entity
// @Table
// public class Product implements Serializable{
// 
// 	private static final long serialVersionUID = 1L;
// 	@Id
//     @GeneratedValue
// 	private Long id;
// 	
// 	private String prodname;
// 	private String prodimage;
// 	private String prodcat;
// 	private int rating;
// 	private String discount;
// 	private String price;
// 	
// 
// 	public Product() {
// 		super();
// 		// TODO Auto-generated constructor stub
// 	}
// 	
// 	public Product(String prodname,String prodimage,String prodcat,int rating, String discount,String price) {
// 		super();
// 		this.prodname = prodname;
// 		this.prodimage = prodimage;
// 		this.prodcat = prodcat;
// 		this.rating = rating;
// 		this.discount = discount;
// 		this.price = price;
// 	}
// 	
// 	public String getProdname() {
// 		return prodname;
// 	}
// 
// 	public void setProdname(String prodname) {
// 		this.prodname = prodname;
// 	}
// 	
// 	public String getProdimage() {
// 		return prodimage;
// 	}
// 
// 	public void setProdimage(String prodimage) {
// 		this.prodimage = prodimage;
// 	}
// 	
// 	public String getProdcat() {
// 		return prodcat;
// 	}
// 
// 	public void setProdcat(String prodcat) {
// 		this.prodcat = prodcat;
// 	}
// 
// 	public String getPrice() {
// 		return price;
// 	}
// 
// 	public void setPrice(String price) {
// 		this.price = price;
// 	}
// 
// 	public String getDiscount() {
// 		return discount;
// 	}
// 
// 	public void setDiscount(String discount) {
// 		this.discount = discount;
// 	}
// 
// 	public void setRating(int rating) {
// 		this.rating = rating;
// 	}
// 
// 	public int getRating() {
// 		return rating;
// 	}
// }


import java.util.Iterator;
import java.util.List;
import java.util.Map;
import javax.faces.context.ExternalContext;
import javax.faces.context.FacesContext;
import com.packt.pfblueprints.dao.util.HibernateUtil;
import org.hibernate.HibernateException;
import org.hibernate.Query;
import org.hibernate.Session;
import org.hibernate.SessionFactory;
import org.hibernate.boot.registry.StandardServiceRegistryBuilder;
import org.hibernate.cfg.Configuration;
import com.packt.pfblueprints.model.Product;

package com.packt.pfblueprints.dao;





public class ProductsDAO {

	private String productCategory;


// Path: chapter10/src/main/java/com/packt/pfblueprints/dao/util/HibernateUtil.java
// public class HibernateUtil {
// 
//     private static final SessionFactory sessionFactory = buildSessionFactory();
// 
//     private static SessionFactory buildSessionFactory() throws HibernateException {
//         Configuration configuration = new Configuration().configure();
//         // configures settings from hibernate.cfg.xml
// 
//         StandardServiceRegistryBuilder serviceRegistryBuilder = new StandardServiceRegistryBuilder();
// 
//         // If you miss the below line then it will complain about a missing dialect setting
//         serviceRegistryBuilder.applySettings(configuration.getProperties());
// 
//         ServiceRegistry serviceRegistry = serviceRegistryBuilder.build();
//         return configuration.buildSessionFactory(serviceRegistry);
//     }
// 
//     public static SessionFactory getSessionFactory() {
//         return sessionFactory;
//     }
// 
//     public static void shutdown() {
//         // Close caches and connection pools
//         getSessionFactory().close();
//     }
// 
// }
// 
// Path: chapter10/src/main/java/com/packt/pfblueprints/model/Product.java
// @Entity
// @Table
// public class Product implements Serializable{
// 
// 	private static final long serialVersionUID = 1L;
// 	@Id
//     @GeneratedValue
// 	private Long id;
// 	
// 	private String prodname;
// 	private String prodimage;
// 	private String prodcat;
// 	private int rating;
// 	private String discount;
// 	private String price;
// 	
// 
// 	public Product() {
// 		super();
// 		// TODO Auto-generated constructor stub
// 	}
// 	
// 	public Product(String prodname,String prodimage,String prodcat,int rating, String discount,String price) {
// 		super();
// 		this.prodname = prodname;
// 		this.prodimage = prodimage;
// 		this.prodcat = prodcat;
// 		this.rating = rating;
// 		this.discount = discount;
// 		this.price = price;
// 	}
// 	
// 	public String getProdname() {
// 		return prodname;
// 	}
// 
// 	public void setProdname(String prodname) {
// 		this.prodname = prodname;
// 	}
// 	
// 	public String getProdimage() {
// 		return prodimage;
// 	}
// 
// 	public void setProdimage(String prodimage) {
// 		this.prodimage = prodimage;
// 	}
// 	
// 	public String getProdcat() {
// 		return prodcat;
// 	}
// 
// 	public void setProdcat(String prodcat) {
// 		this.prodcat = prodcat;
// 	}
// 
// 	public String getPrice() {
// 		return price;
// 	}
// 
// 	public void setPrice(String price) {
// 		this.price = price;
// 	}
// 
// 	public String getDiscount() {
// 		return discount;
// 	}
// 
// 	public void setDiscount(String discount) {
// 		this.discount = discount;
// 	}
// 
// 	public void setRating(int rating) {
// 		this.rating = rating;
// 	}
// 
// 	public int getRating() {
// 		return rating;
// 	}
// }


// Path: chapter10/src/main/java/com/packt/pfblueprints/dao/ProductsDAO.java
import java.util.Iterator;
import java.util.List;
import java.util.Map;
import javax.faces.context.ExternalContext;
import javax.faces.context.FacesContext;
import com.packt.pfblueprints.dao.util.HibernateUtil;
import org.hibernate.HibernateException;
import org.hibernate.Query;
import org.hibernate.Session;
import org.hibernate.SessionFactory;
import org.hibernate.boot.registry.StandardServiceRegistryBuilder;
import org.hibernate.cfg.Configuration;
import com.packt.pfblueprints.model.Product;

package com.packt.pfblueprints.dao;





public class ProductsDAO {

	private String productCategory;


	public ProductsDAO() {
