hibernate二级缓存 hibernate二级缓存原理
小柳给大家谈谈hibernate二级缓存,以及hibernate二级缓存原理应用的知识点,希望对你所遇到的问题有所帮助。
hibernate二级缓存 hibernate二级缓存原理
hibernate二级缓存 hibernate二级缓存原理
1、2.开发难度对比hibernate与jdbc相比较的主要优点是:一、面向对象:hibernate可以让开发人员以面向对象的思想来作数据库。
2、jdbc只能通过SQL语句将元数据传送给数据库,进行数据作。
3、而hibernate可以在底层对元数据和对象进行转化,使得开发者只用面向对象的方式来存取数据即可。
4、二、移植性:hibernate使用xml或JPA的配置以及数据库方言等等的机制,使得hibernate具有更好的移植性,对于不同的数据库,开发者只需要使用相同的数据作即可,无需关心数据库之间的异。
5、而直接使用JDBC就不得不考虑数据库异的问题。
6、三、封装性:hibernate提供了大量的封装(这也是它的缺点),很多数据作以及关联关系等都被封装的很好,开发者不需写大量的sql语句,这就极大的提高了开发者的开发效率。
7、四、缓存p:pool-config-ref="poolConfig" />机制:hibernate提供了缓存机制(session缓存,二级缓存,查询缓存),对于那些改动不大且经常使用的数据,可以将它们放到缓存中,不必在每次使用时都去查询数据库,缓存机制对提升性能大有裨益。
8、缺点:一、对hibernate而言,它对JDBC封装过于厉害,所以就失去了对SQL的控制(当然hibernate也可以使用native sql既使用createSQLQuery等方法来调用与数据库相关的sql,但这样一来也就影响了hibernate的可移植性),使得hibernate的在很多地方不够灵活,难于优化,尤其对于一些复杂的关联查询时,hibernate提供的功能远不及直接使用JDBC方便性能更高。
9、二、hibernate没有提供专门的批处理机制,如果要批量更新或插入数据时,还需要显示的flush,clear之类的作,性能不如JDBC。
10、三、相对于JDBC,hibernate更消耗内存,因为它每次的数据库c Cascade策略 在几对几的关系 正确设置cascade策略 想清楚在作对象A的同时是否需要级联作对象B 比如在one to many的父子关系中 删除了父亲one 需级联删除子many 这时的one这端可设置cascade = delete 这样在删除one时 会自动删除子 但对子的作不会影响父 Cascade还有其他的属性值 只要设置正确 可提升性能作都要做数据和对象的转换/封装,查询出一条数据就要创建一个或多个对象,这样也太消耗内存了。
11、一般项目都会用到hibernate,不过初学者对于jdbc也要有一些了解这样方便了解hibernate的机制,实际项目中hibernate用的比较多,有时也会用到jdbc看具体情况。
12、1、内存消耗:采用JDBC的无疑是最省内存的,Hibernate的次之其实他们都是基于接口来设计的,属单例,只不过hibernate比较倾向于我们所用的面向对象编程的思想不太相干的两个东西...Hibernate是一种框架,提供ORMapping的功能jdbc是一种连接数据库的标准方式。
本文到这结束,希望上面文章对大家有所帮助。
声明:本站所有文章资源内容,如无特殊说明或标注,均为采集网络资源。如若本站内容侵犯了原著者的合法权益,可联系 836084111@qq.com 删除。