HIbernate:
1.概念:ORMapping (对象关系映射)
1)操作数据库的框架,底层是通过JDBC操作数据库的
2)用面向对象的方式操作数据库
2.JDBC的缺点:
1)代码繁琐
2)不是面向对象的数据库操作
3)资源关闭的代码也很繁琐
4)没有做到数据库缓存
5)移植性比较差(MySQL无法移植到Oracle)
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的延迟加载用到)