hibernate的增删改查,其中查询有四种方式
public static void main(String[] args) {
HibernateSessionFactory HibernateSessionFactory=new HibernateSessionFactory();
Session session=HibernateSessionFactory.getSession();
System.out.println(HibernateSessionFactory.getSession());
try {
Object object=null;
//打开事务
session.beginTransaction();
/**business begin**/
//HQL
session.createQuery("HQLqueryString");
//SQL
session.createSQLQuery("SQLqueryString");
//命名查询 有点像ibatis轻量级框架的操作
//Query query = session.getNamedQuery("getUserById");
//query.setInteger("id", id);
//return query.list();
//面向对象查询
Criteria c=session.createCriteria(User.class);
c.add(Restrictions.eq("name",name));//eq是等于,gt是大于,lt是小于,or是或
c.add(Restrictions.eq("password", password));
List<User> list=c.list();
session.save(object);
session.delete(object);
// session.get(clazz, id);
// session.load(object, "id");
session.update(object);
/**business end**/
//提交事务
session.getTransaction().commit();
} catch (Exception e) {
//事务回滚
session.getTransaction().rollback();
e.printStackTrace();
}
}
查询后排序
import java.util.ArrayList;
import java.util.List;
import org.hibernate.Criteria;
import org.hibernate.criterion.Order;
import org.hibernate.criterion.Restrictions;
import com.Goods;
import com.utl.HibernateSessionFactory;
public class GoodsDAO {
public List<Goods> findAll(){
List<Goods> listgood=new ArrayList<Goods>();
String hql="from Goods";
Criteria c=HibernateSessionFactory.getSession().createCriteria(Goods.class);
c.add(Restrictions.eq("name","瓜子"));//eq是等于,gt是大于,lt是小于,or是或
c.addOrder(Order.asc("id")); //排序
//c.add(Restrictions.eq("password", password));
listgood=c.list();
for (Goods goods : listgood) {
System.out.println(goods.toString());
}
return listgood;
}
}