Cascade属性的作用是描述关联对象进行操作时的级联特性,因此只有涉及到关系的元素才有cascade属性
答:①记录不存在时 get()方法会返回空(null),而load()方法将会抛出一个HibernateException异常 ② load()方法查询数据时会先找Hibernate的内部缓存和二级缓
存中的现有数据,get()方法在内部缓存中没有达到相对应的数据时装直接执行SQL语句
进行查询
答:HQL是面向对象的查询语言,它可以查询以对象形式存在的数据。
25. Hibernate简介以及主要功能 [中] 答:Hibernate是采用ORM模式实现数据持久层的一个优秀的JAVA组件,它提供了
强大,高效的将JAVA对象进行持久化操作的服务
26. 简述Hibernate的优点 [难] 答:开源和免费的License,我可以在需要的时候研究源代码,改写源代码,进行功能的定制。轻量级封装,避免引入过多复杂的问题,调试容易,也减轻程序员的负担。
具有可扩展性,API开放,当本身功能不够用的时候,可以自己编码进行扩展。
简单地说,抽象类主要用于关系密切的对象,而接口用于为不相关的类提供通用功能。
答:hibernate的session提供了一级缓存的功能,默认总是有效的,当应用程序保存持久化实体、修改持久化实体时,session并不会立即把这种改变提交到,而是缓存在当前的session中,除非显示调用了session的flush()方法或通过close()方法关闭session。
session的get根据当前线程返回其对应的线程内部变量,也就是我们需要的net.sf.hibernate.session(相当于对应每个连接).多线程情况下共享链接是不安全的。
hibernate中的缓存主要有session缓存(一级缓存)和sessionfactory缓存(二级缓存,一般由第三方提供)。
由于SessionFactory实例是线程安全的(而Session实例不是线程安全的),所以每个操作都可以共用同一个SessionFactory来获取Session。Hibernate配置文件分为两种格式,一种是xml格式的配置文件,另一种是Java属性文件格式的配置文件
(1)创建一个Configuration对象,并通过该对象的configura()方法加载Hibernate配置文件,代码如下。
net.sf.ehcache.config.configuration config = new net.sf.ehcache.config.configuration()。
net.sf.ehcache.config.configuration config=new configuration()。
configuration cfg = new configuration().configure()。
configuration configuration = new configuration().configure()。
configura()方法:用于告诉Hibernate加载hibernate.cfg.xml文件。Configuration在实例化时默认加载classpath中的hibernate.cfg.xml,当然也可以加载名称不是hibernate.cfg.xml的配置文件,例如wghhibernate.cfg.xml,可以通过以下代码实现。
Configuration config = new Configuration().configure("wghhibernate.cfg.xml");
本文来自电脑杂谈,转载请注明本文网址:
https://www.pc-fly.com/a/ruanjian/article-89131-2.html
由多艘军舰护航
我们真的倒退100年
越往后对我们越有利