1.增加

@Test
public void add(){
Configuration cfg=new Configuration().configure();
SessionFactory factory=cfg.buildSessionFactory();
Session session=factory.openSession();
Emps emp=new Emps("cat","女",15,30,2000);
session.save(emp);
session.close();
factory.close();
}

2.查询

@Test
public void query1(){
Configuration cfg=new Configuration().configure();
SessionFactory factory=cfg.buildSessionFactory();
Session session=factory.openSession();
Emps emp=(Emps) session.get(Emps.class, 1005);
System.out.println(emp.toString());
session.close();
factory.close();
}

延迟加载:

get方法:调用立刻发出sql查询

load方法:调用不发出sql,当我们需要使用该对象时才查询

Query:

当查询结果只有一个的时候可以使用uniqueResult()方法。

Emps emp=(Emps) query.uniqueResult();

分页:

        Query query = session.createQuery("from Emps");
//分页
//从第几个开始取结果
query.setFirstResult(0);
//每页最多有几个结果
query.setMaxResults(3);
List<Emps> list = query.list();

3.修改表-需要创建事务

@Test
public void update(){
Configuration cfg=new Configuration().configure();
SessionFactory factory=cfg.buildSessionFactory();
Session session=factory.openSession();
Transaction ts=session.beginTransaction();
Emps emp=(Emps) session.get(Emps.class, 1005);
emp.setAge(30);
session.update(emp);
ts.commit();
System.out.println(emp.toString());
session.close();
factory.close();
}

4.删除

@Test
public void delete(){
Configuration cfg=new Configuration().configure();
SessionFactory factory=cfg.buildSessionFactory();
Session session=factory.openSession();
Transaction ts=session.beginTransaction();
//根据ID删除;
Emps emp=new Emps();
emp.setId(1019);
session.delete(emp);
ts.commit();
session.close();
factory.close();
}

5.查询所有对象(HQL)

HQL:Hibernate Query Language

@Test
public void query2(){
Configuration cfg=new Configuration().configure();
SessionFactory factory=cfg.buildSessionFactory();
Session session=factory.openSession();
Query query = session.createQuery("from Emps");//Emps是一个类名
List<Emps> list = query.list();
for(Emps e:list){
System.out.println(e);
}
session.close();
factory.close();
}

6. Criteria查询

@Test
public void query3(){
Configuration cfg=new Configuration().configure();
SessionFactory factory=cfg.buildSessionFactory();
Session session=factory.openSession();
//Criteria 查询:Hibernate面向对象的查询(无语句)
Criteria criteria=session.createCriteria(Emps.class);
List<Emps> list = criteria.list();
for(Emps e:list){
System.out.println(e);
}
session.close();
factory.close();
}

7.Sql查询

@Test
public void query4(){
Configuration cfg=new Configuration().configure();
SessionFactory factory=cfg.buildSessionFactory();
Session session=factory.openSession();
SQLQuery createSQLQuery = session.createSQLQuery("select * from emps");
createSQLQuery.addEntity(Emps.class);
List<Emps> list = createSQLQuery.list();
for(Emps e:list){
System.out.println(e);
}
session.close();
factory.close();
}

最新文章

  1. [cocos] ( 01 ) cocos2d-x 3.x 开发 环境配置
  2. Redis两种持久化方式(RDB&amp;AOF)
  3. Django 之 ForeignKey、ManyToMany的访问方式
  4. 自定义view 画圆
  5. 解决discuz论坛搬家:“Table ‘common_syscache’ is read only”问题
  6. fork炸弹
  7. -_-#【邮件】qq邮箱不显示图片
  8. CSS的z-index(分层)
  9. [其他]Jboss容器开启调试模式
  10. vs2015打开cshtml文件失败的解决方法
  11. 需求分析---NABCD
  12. myeclipse中修改maven的默认仓库位置
  13. Linux IPC - Shared memory
  14. MTK6261 11C之Init Analysis【手记】
  15. 小程序解析html(使用wxParse)
  16. Dynamics 365 Online-Unified User Interface
  17. Alpha冲刺(9/10)
  18. exshop第6天
  19. .Net Core 本地化&amp;全球化 实践
  20. hashtable详解

热门文章

  1. E - Just a Hook
  2. leetcode解题文件夹
  3. IOS总结_实现UIButton的图文混排(二)
  4. 编写MyLayer,2 锚点,3 精灵的创建,4 zorder
  5. luogu1168 中位数
  6. 【Codeforces 258B】 Sort the Array
  7. SQL Server 2005外围应用配置器
  8. c# 获取本周开始时间与结束时间
  9. IO编程 - 转载自廖雪峰的博文
  10. NOIP2013T1 转圈游戏 快速幂