下面我将列出所有用于控制insert和update语句的映射属性。
1.<property>元素的insert属性
如果为false,在insert语句中不包含该字段,表明该字段永远不能被插入。默认为true
2.<property>元素中的update属性
如果为false,update语句中不包含该字段,表明该字段用于不能被更新。默认为false
3.<class>元素的mutable属性
如果为false,等价于所有的<property>元素的update属性为false,表示整个实例不能被更新,默认值为true
4.<class>元素的dynamic-insert属性
如果为true,表示当保存一个对象时,会动态的生成insert语句,insert语句中仅包含所有取值不为null的字段。默认为false
5.<class>元素的dynamic-update属性
如果为true,表示当更新一个对象时,会动态的生成update语句,update语句中仅包含所有取值不为null的字段。默认为false
总结:Hibernate生成动态sql语句的系统开销很小,因此你不会影响应用的运行性能。如果表中包含许多字段,建议把dynamic-insert和dynamic-update都设置为true。这样,在insert和update语句中就只包含需要插入或者更新的字段,这样可以节省数据库执行sql语句的时间,从而提高整个应用的性能。
分享到:
相关推荐
在映射文件中,可以通过设置`insert`和`update`属性来控制字段是否参与插入或更新操作。例如: ```xml <property name="name" type="java.lang.String" insert="false" update="false"> ``` 在这个例子中,`...
### Hibernate映射文件基础结构 映射文件通常以`<!DOCTYPE hibernate-mapping>`开头,引用DTD(文档类型定义),确保文件遵循正确的格式。例如: ```xml <!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/...
`component`元素的`name`属性指定了属性名,`class`属性是组件类的名称,`insert`和`update`控制是否在SQL语句中包含该组件,`access`指定访问组件属性的方式。 最后,我们简要讨论了Hibernate的配置文件,它可以是...
同时,在映射文件中添加相应的配置: ```xml ``` 通过上述配置,可以有效地管理和操作一对多的关联关系。 综上所述,了解并掌握Hibernate中的关联映射及其常用属性对于开发高质量的应用程序至关重要。这些...
`hibernate-mapping`节点是Hibernate映射文件中的顶级节点,用于定义一系列配置选项,控制整个映射文件的行为和映射规则。这些配置包括数据库连接细节、默认的映射策略等。 - **schema**: 定义了数据库的Schema名称...
如果选择注解方式,可以在Mapper接口的方法上直接使用@Select、@Insert、@Update或@Delete等注解,注解中包含对应的SQL语句。但更常见的是通过配置文件的方式,此时需要在SqlMapConfig.xml中声明Mapper接口,然后在...
在Java的Hibernate ORM框架中,`dynamic-insert`和`dynamic-update`是两个非常重要的属性,它们主要用于优化数据库的插入和更新操作。这两个属性主要应用于实体类的映射文件(.hbm.xml)中,用于控制Hibernate如何...
Hibernate和MyBatis都是Java持久层框架,它们都是将Java对象与关系数据库表相互映射的工具。虽然它们都具有相似的功能,但是它们在实现机制、配置文件、映射关系、jar包依赖等方面存在着一些差异。 jar包依赖 ...
例如,`length`针对字符串类型限制长度,`insertable`和`updateable`控制字段在INSERT和UPDATE语句中的行为。 7. **@Transient**:这个注解用于声明一个属性不应映射到数据库表字段,ORM框架会忽略它。对于计算属性...
在这个“Hibernate入门”教程中,我们将深入探讨Hibernate的基本概念、配置文件以及如何进行增删改查操作。 首先,Hibernate的核心是其配置文件(通常命名为`hibernate.cfg.xml`),这是连接数据库的关键。配置文件...
在Java开发中,特别是在企业级应用中,XML文件常常被用来作为配置文件,其中包含了对象与数据库表之间的映射关系,这就是所谓的实体映射。Hibernate、MyBatis等ORM框架广泛使用了这种映射方式。`FTL`是Freemarker ...
Hibernate通过映射文件来实现对象和数据库表的映射关系,从而提供了一种简便的方式来操作数据库中的数据。 在Hibernate中,主要接口包括Session、SessionFactory、Transaction、Query等,它们各自承担着创建、管理...
这个压缩包提供了有关如何通过Hibernate在Oracle数据库中执行插入、查询、更新和删除操作的详细实践。 【描述】"hibernate, oracle, insert, query, update, delete" 是关键主题,这表明项目的核心是使用Java持久化...
Hibernate 是一个流行的开源 ORM(对象关系映射)框架,它为 Java 开发人员提供了一种在应用程序中管理和操作关系数据库的便捷方式。通过 Hibernate,开发者可以将 Java 对象与数据库中的记录进行映射,从而避免直接...
1. **对象关系映射(ORM)**: Hibernate 提供了一种映射机制,将Java类和数据库表之间的关系进行配置,使得Java对象可以直接在数据库中持久化。 2. **自动SQL生成**: 根据对象的状态,Hibernate 自动生成合适的...
Hibernate是一个开源的对象关系映射(ORM)框架,它允许Java开发者在关系数据库和对象模型之间建立桥梁,使得数据库操作可以通过对象的方式进行,极大地简化了Java应用程序的开发。本中文参考文档将深入探讨...
以下是这个例子的Hibernate映射文件: <component name="Name" class="eg.Name"> <!-- class attribute optional --> 人员(Person)表中将包括pid, birthday, initial, first和 last等字段...
1. **XML到数据库映射**:在Hibernate 3.1中,开发者能够通过配置文件将XML文档中的节点映射为数据库中的表和列。这一过程不依赖于POJO(Plain Old Java Object),即普通的Java对象,使得数据模型与业务逻辑分离,...
例如,`mybatis-config.xml`中的`mappers`、`environments`等元素,映射文件中的`select`、`insert`、`update`、`delete`等元素,都通过DTD定义了它们的结构。DTD在这里的作用是保证MyBatis能够理解并正确执行SQL...
此外,映射文件(如`Mapper.xml`)中的DTD定义了`<select>`、`<insert>`、`<update>`和`<delete>`等SQL操作元素。 4. Struts DTD文件(2.0-2.3) Struts是基于MVC(Model-View-Controller)架构的Java Web框架,它...