zoukankan      html  css  js  c++  java
  • Hibernate初探之单表映射

    http://www.imooc.com/video/7816

    1.什么是ORM?为什么使用Hibernate? 对象关系映射;为了少写和底层数据库相关的sql语句,方便程序的维护、修改,提高跨平台性和可扩展性。Hibernate是Java领域内的一款技术成熟稳定的ORM框架 2.Hibernate开发的基本步骤? (1)编写配置文档hibernate.cfg.xml (2)编写实体类。注意:每一个实体类都要与数据库中的一张表一一对应,实体类的编写要遵循JavaBean的要求。 (3)生成对应实体类的映射文件并添加到配置文档中 (4)调用Hibernate API进行测试 3.什么是session? 类似于JDBC里面的connection对象。调用session操作数据库,实际上就是调用connection的各种API函数来实现的。 4.openSession与getCurrentSession的区别? openSension每次都是创建新的session对象,而getCurrentSenssion使用单例模式,每次创建都是相同的对象。openSession在使用完毕后需要显式地关闭,而getCurrentSession在事务提交之后会自动关闭。 5.单表操作有哪些常用的方法? 增删改查对应使用session当中的save、delete、update、get/load方法 6.单表操作,查询一条记录时,get和load的区别? get在使用的时候立即发送sql语句,并且获得的是实体类的对象类型,而load只有在使用具体对象的非主键属性的时候才会发送sql语句,而且返回的是一个代理对象。

    单个记录查询get与load的区别
    1.在不考虑缓存的情况下,get方法会在调用之后立即向数据库发出sql语句,返回持久化对象(实体类的对象)。
    2.load方法会在调用后返回一个代理对象,该代理对象只保存了实体对象的id,直到使用对象的非主键属性时才会发出sql语句。
    3.查询数据库中不存在的数据时,get方法返回null,load方法抛出异常org.hibernate.ObjectNotFoundExceptio
  • 相关阅读:
    基于摸板匹配的目標跟蹤算法
    spoj 2713 Can you answer these queries IV
    zoj 3633 Alice's present
    hdu 3642 Get The Treasury
    poj 1195 Mobile phones
    poj 2760 End of Windless Days
    zoj 3540 Adding New Machine
    spoj 1716 Can you answer these queries III
    spoj 1043 Can you answer these queries I
    spoj 2916 Can you answer these queries V
  • 原文地址:https://www.cnblogs.com/aoyihuashao/p/7862949.html
Copyright © 2011-2022 走看看