Hibernate其他常用的配置属性: ⊙ hibernate.show_sql : 是否在控制台输出Hibernate持久化操作底层所使用的SQL语句.只能为true和false两个值. ⊙ hibernate.format_sql : 是否将SQL语句转成格式良好的SQL.只接受true和false两个值. ⊙ hibernate.use_sql_comments : 是否在Hibernate生成的SQL语句中添加有助于调试的注释.只接受true和false值. ⊙ hibernate.jd…
如果无须Hibernate自己管理数据源,而是直接访问容器管理数据源,Hibernate可使用JNDI(Java Naming Directory Interface,Java命名目录接口)数据源的相关配置. 连接JNDI数据源的主要配置属性: ⊙ hiberante.connection.datasource : 指定JNDI数据源的名字. ⊙ hibernate.jndi.url : 指定JNDI提供者的URL,该属性是可选的.如果JNDI与Hibernate持久化访问的代码处于同一个应用中…
外连接抓取能限制执行SQL语句的次数来提高效率,这种外连接抓取通过在单个select语句中使用outer join来一次抓取多个数据表的数据. 外连接抓取允许在单个select语句中,通过@ManyToOne.@OneToMany.@ManyToMany和@OneToOne等关联获取连接对象的整个对象图. 将hibernate.max_fetch_depth 设为0,将在全局范围内禁止外连接抓取,设为1或更高值能启用N-1或1-1的外连接抓取.除此之外,还应该在持久化注解中通过fetch=Fet…
Hibernate的持久化操作离不开SessionFactory对象,这个对象是整个数据库映射关系经过编译后的内存镜像,该对象的openSession()方法可打开Session对象.该对象通常由Configuration对象产生. 每个Hibernate配置文件对应一个Configuration对象.在极端的情况下,不使用任何配置文件,也可创建Configuration对象. 5.4.1 创建Configuration对象 5.4.2 hibernate.properties文件与hibern…
Hibernate的基本用法 ⊙ ORM的基本知识 ⊙ ORM和Hibernate的关系 ⊙ Hibernate的基本映射思想 ⊙ Hibernate入门知识 ⊙ 使用Eclipse开发Hibernate应用 ⊙ Hibernate的体系和核心API ⊙ Hibernate的配置文件 ⊙ 持久化类的基本要求 ⊙ 持久化对象的状态 ⊙ Hibernate的基本映射 ⊙ 数据库对象映射 ⊙ List.Set和Map等集合属性映射 ⊙ 组件属性映射 ⊙ 集合元素为符合类型的映射 ⊙ 符合主键映射 ⊙…
Hibernate需要进行数据库访问,因此必须设置连接数据库的相关属性.所有Hibernate属性的名字和语义都在org.hibernate.cfg.Environment中定义. 关于JDBC连接配置中最重要的设置: ⊙ hiberante.connection.driver_class : 设置连接数据库的驱动. ⊙ hibernate.connection.url : 设置所需连接数据库服务的URL. ⊙ hibernate.connection.username : 设置连接数据库的用户…
org.hibernate.cfg.Configuration实例代表了应用程序到SQL数据库的配置信息,Configuration对象提供了一个buildSessionFactory()方法,该方法可以产生一个不可变的SessionFactory对象. 另外,先实例化Configuration实例,然后在添加Hiberante持久化类.Configuration对象可调用addAnnotatedClass()方法逐个地添加持久化类,也可调用addPackage()方法添加指定包下的所有持久化类…
hibernate中保存一个对象后再设置此对象的属性为什么不需要调用update方法了 例如session.save(user);user.setAge(20); 原因: hibernate对象的三种状态.瞬时态(没有id,不与session关联)持久态(有id,与session关联)托管态(有id,不与session关联) User user = new User();//新建的对象是瞬时态 session.save(user);//save后,user变成持久态 user.setAge(20…
3.4.  可选的配置属性 有大量属性能用来控制Hibernate在运行期的行为. 它们都是可选的, 并拥有适当的默认值. 警告: 其中一些属性是"系统级(system-level)的". 系统级属性只能通过java -Dproperty=value或 hibernate.properties来设置, 而不能用上面描述的其他方法来设置. 在文档 表 3.3.  Hibernate配置属性 属性名 用途 hibernate.dialect 一个Hibernate Dialect类名允许H…
Hibernate配置属性 属性名 用途 hibernate.dialect 一个Hibernate Dialect类名允许Hibernate针对特定的关系数据库生成优化的SQL. 取值 full.classname.of.Dialect hibernate.show_sql 输出所有SQL语句到控制台. 有一个另外的选择是把org.hibernate.SQL这个log category设为debug. eg. true | false hibernate.format_sql 在log和con…