package com.scottwong.test;
import java.util.List;
import org.hibernate.Criteria;
import org.hibernate.Session;
import org.hibernate.criterion.Restrictions;
import com.scottwong.domain.User;
import com.scottwong.util.HibernateUtil;
public class CriteriaQuery {
/**
* @param args
*/
public static void main(String[] args) {
query("黄后林 ",3);
}
@SuppressWarnings("unchecked")
public static void query(String sname,int intId) {
Session s = null;
try {
s = HibernateUtil.getSession();
Criteria criteria = s.createCriteria(User.class);
criteria.add(Restrictions.eq("name", sname)); // User有个属性叫name
criteria.add(Restrictions.gt("id", intId)); // User有个属性叫id
List<User> list = (List<User>) criteria.list();
for (User user : list) {
System.out.println(user.getId() + "\t" + user.getName() + "\t"
+ user.getDate());
}
} finally {
if (null != s) {
s.close();
}
}
}
}
package com.scottwong.test;
import java.util.List;
import org.hibernate.Query;
import org.hibernate.Session;
import com.scottwong.domain.User;
import com.scottwong.util.HibernateUtil;
public class QueryTest {
/**
* @param args
*/
public static void main(String[] args) {
query("黄后林 ");
}
@SuppressWarnings("unchecked")
public static void query(String name){
Session s = null;
try{
s = HibernateUtil.getSession();
String hql ="from User as user where user.name = ?";
Query query = s.createQuery(hql);
query.setString(0, name);
List<User> list =(List<User>)query.list();
for(User user : list){
System.out.println(user.getId()+"\t"+user.getName() +"\t" +user.getDate());
}
}finally{
if (null != s) {
s.close();
}
}
}
}
package com.scottwong.domain;
import java.util.Date;
public class User {
private int id;
private String name;
private Date date;
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public Date getDate() {
return date;
}
public void setDate(Date date) {
this.date = date;
}
}
package com.scottwong.util;
import org.hibernate.Session;
import org.hibernate.SessionFactory;
import org.hibernate.cfg.Configuration;
/**
* 不能通过继承改写我的文件
* @author Administrator
*
*/
public final class HibernateUtil {
private static SessionFactory sessionFactory;
/**
* 别人不能new
*/
private HibernateUtil(){}
/**
* 只在虚拟机加载类HibernateUtil的时候执行一次,之后不再执行
*/
static {
//从类路径classpath中去读配置文件
Configuration cfg = new Configuration();
//与cfg.configure("hibernate.cfg.xml");
cfg.configure();
sessionFactory =cfg.buildSessionFactory();
}
public static SessionFactory getSessionFactory() {
return sessionFactory;
}
public static Session getSession() {
return sessionFactory.openSession();
}
}