Hibernate 和JDBC的区别

HIbernate:java

  1.概念:ORMapping (对象关系映射)程序员

    1)操做数据库的框架,底层是经过JDBC操做数据库的数据库

    2)用面向对象的方式操做数据库缓存

  2.JDBC的缺点:app

    1)代码繁琐框架

    2)不是面向对象的数据库操做优化

    3)资源关闭的代码也很繁琐spa

    4)没有作到数据库缓存代理

    5)移植性比较差(MySQL没法移植到Oracle)xml

   JDBC优势:

    1)由于是底层操做因此效率高

    

  3.Hibernate

    1)代码比较精简

    2)是面向对象的数据库操做

    3)只须要关闭一个对象就能够了(关闭Session)

    4)数据缓存 (一级缓存、二级缓存、查询缓存)

    5)移植性比较好

  缺点:

    1)程序员没法控制SQL语句的生成 (HQL语句能够手写SQL语句)

    2)一个项目对SQL语句优化特别高,HIbernate则不适合

    3)若是一张表的数据量特别大,则不适合HIbernate

 ====================数据库和实体类的映射文件=============================

============================hIbernate.cfg.xml的配置文件========================================

=======================hIbernate须要的包===============================================

动态代理模式:JDK的动态代理(proxy)代理对象是在内存中产生的本质上字节码生成的一个对象

javassist.jar: 字节码jar包。相似于产生动态代理对象的机制。主要操做字节码文件的。和Java虚拟机直接相关的jar包(HIbernate的延迟加载用到)

 

 

 

相关文章
相关标签/搜索