package roseindia.tutorial.hibernate;

import java.util.List;

import org.hibernate.Criteria;
import org.hibernate.Session;
import org.hibernate.SessionFactory;
import org.hibernate.cfg.Configuration;
import org.hibernate.criterion.ProjectionList;
import org.hibernate.criterion.Projections;

public class ProjectionExample1 {

	/**
	 * @param args
	 */
	public static void main(String[] args) {
		// TODO Auto-generated method stub
		
		Session sess = null;
		try {
			SessionFactory fact = new Configuration().configure().buildSessionFactory();
			sess = fact.openSession();
			Criteria crit = sess.createCriteria(Insurance.class);
			ProjectionList proList = Projections.projectionList();
			proList.add(Projections.sum("investementAmount"));
			crit.setProjection(proList);
			List sumResult = crit.list();
			System.out.println("Total Invested Amount: " + sumResult);
		}
		catch(Exception e){
			System.out.println(e.getMessage());
		}
	}

}
