Hibernate中常用CRUD代码

C:create 增加
R:Retrieve 检索
U:Update 更新
D:Delete 删除
static Session session =null;
public static void getSession() {
    
    
Configuration config = new Configuration().configure();
SessionFactory factory = config.buildSessionFactory();
session = factory.openSession();
}
public static void close() {
    
    
if(session!=null) {
    
    
session.close();
}
}
public static void add() {
    
    
StuEntity stu= new StuEntity();
stu.setId(2);
stu.setText("result1");
stu.setAddr("insert2");
Transaction ts = session.beginTransaction();//开启事务处理
session.save(stu);//保存数据
ts.commit();//提交事物--
}
public static void delete() {
    
    
// Stu stu =new Stu();
// stu.setId(4);
StuEntity stu=session.get(StuEntity.class,3);
Transaction ts = session.beginTransaction();//开启事务处理
session.delete(stu);
ts.commit();//提交事物--

}
public static void update() {
    
    
EmcEntity u_data = session.get(EmcEntity.class,4);
u_data.setText("ssu");
Transaction ts = session.beginTransaction();//开启事务处理
session.update(u_data);
ts.commit();//提交事物--
}
//hql条件查询
public static void soluSelect(){
    
    
Query query = session.createQuery("from StuEntity where id = :stu");
query.setParameter("stu",1);
StuEntity stu=(StuEntity) query.uniqueResult();
System.out.print(stu);
}
public static void selectone() {
    
    
StuEntity u_data = session.find(StuEntity.class,3);
System.out.println(u_data);
}
//hql分页查询
public static void fenyeselect(){
    
    
Query query = session.createQuery("from StuEntity ");
query.setFirstResult(0);
query.setMaxResults(1);
List<StuEntity> list = query.getResultList();
System.out.print(list);
}
//hql基本查询
public static void selectList() {
    
    
Query query = session.createQuery("from StuEntity");//hql
List<StuEntity> list = query.list();
System.out.println(list);
}

//criteria条件查询和全部查询
public static void criteriaSlect(){
    
    
Criteria criteria =session.createCriteria(StuEntity.class);
//= =
// criteria.add(Restrictions.eq("id",1));
//>
// criteria.add(Restrictions.gt("id",1));
//! =
// criteria.add(Restrictions.ne("id",3));
//in
// criteria.add(Restrictions.in("id",1,2,3));
//between and
// criteria.add(Restrictions.between("id",1,3));
//like
//criteria.add(Restrictions.like("addr","%in%"));
// isNotNull
// criteria.add(Restrictions.isNotNull("addr"));
//or
//criteria.add(Restrictions.or(Restrictions.like("addr","c%"),Restrictions.like("addr","%1%")));
//adn
criteria.add(Restrictions.and(Restrictions.eq("addr","info1"),Restrictions.eq("text","sss4")));
List<StuEntity>list=criteria.list();
// StuEntity stuEntity =(StuEntity)criteria.uniqueResult();
System.out.print(list);
}
//criteria聚合函数
public static void juheCriteria(){
    
    
Criteria criteria =session.createCriteria(StuEntity.class);
Object al= criteria.setProjection(Projections.rowCount()).uniqueResult();
Object a2= criteria.setProjection(Projections.max("id")).uniqueResult();
Object a3= criteria.setProjection(Projections.min("id")).uniqueResult();
Object a4= criteria.setProjection(Projections.sum("id")).uniqueResult();
Object a5= criteria.setProjection(Projections.avg("id")).uniqueResult();
System.out.print(al.toString()+" "+a2.toString()+" "+a3.toString()+" "+a4.toString()+" " +a5.toString());
}
public static void loadned(){
    
    
StuEntity stu = session.load(StuEntity.class,1);
System.out.print(stu);
}

//原生sql返回多条
public static void yuanshengSql() {
    
    
String sql = "SELECT * from stu";
NativeQuery sq = session.createSQLQuery(sql);
sq.addEntity(StuEntity.class);
List<StuEntity> list = sq.list();
System.out.println(list);
// List<Object[]> list = sq.list();
// for (int i = 0; i < list.size(); i++) {
    
    
// System.out.println(Arrays.toString(list.get(i)));
// }
}
//原生sql返回单条
public static void sqlDantiao() {
    
    
String sql = "SELECT * from stu WHERE id=1";
NativeQuery sq = session.createSQLQuery(sql);
sq.addEntity(StuEntity.class);
StuEntity stuEntity=(StuEntity) sq.uniqueResult();
System.out.print(stuEntity);
}

猜你喜欢

转载自blog.csdn.net/weixin_44703894/article/details/111660351