有的时候往一个别的字段特别多!但是在某些特定的情况下并没有必要插入全部字段!如果不加以控制
就会耗内存!所以hibernte添加了自定的sql语句的配置
如果不想在insert或update语句中包括所有属性,则可以在属性定义时 加上insert ="false"或update="false"如下:
<hibernate-mapping>
<class name="com.yohn.hibernate.Students" table="students">
<id name="SId" type="java.lang.Integer">
<column name="s_id" />
<generator class="native" />
</id>
<property name="SName" type="java.lang.String">
<column name="s_name" length="20" not-null="true" />
</property> //记住设置这里不然会异常
<property name="SRemark" type="java.lang.String" update="false" insert="false">
<column name="s_remark"/>
</property>
<!-- 定义语句-->
<!-- 定义语句-->
<sql-insert>
insert into students (s_name) values (?)
</sql-insert>
<sql-update>
update students set s_name=? where s_id=?
</sql-update>
<sql-delete>
delete from students where s_id = ?
</sql-delete>
</class>
</hibernate-mapping>
其余的操作就一样了!你想干么还干吗?
分享到:
相关推荐
通过类实例的字段,可以生成`INSERT INTO`、`SELECT`、`UPDATE`和`DELETE`语句。 5. **异常处理机制**: 在自定义ORM中,异常处理机制至关重要,因为数据库操作可能会遇到各种错误,如SQL语法错误、连接问题、数据...
通过将值对象转换为SQL语句,我们可以方便地执行常见的数据库操作,比如SELECT、INSERT、UPDATE和DELETE。 例如,如果你有一个User值对象,包含id(int)、name(String)和email(String)等属性,你可以很容易地生成...
【描述】"hibernate, oracle, insert, query, update, delete" 是关键主题,这表明项目的核心是使用Java持久化框架Hibernate与Oracle关系型数据库系统交互,涵盖数据的增、删、改、查四大基本操作。 【标签】...
在"Java使用注解拼接SQL语句"的场景中,我们可能会定义一个如`@Select`、`@Insert`、`@Update`或`@Delete`的注解,用于标注SQL查询相关的代码。例如,我们可以定义一个`@Query`注解,其中包含SQL语句的模板或者参数...
经典SQL语句大全通常包括DML(Data Manipulation Language)如SELECT、INSERT、UPDATE、DELETE,DDL(Data Definition Language)如CREATE、ALTER、DROP,以及事务控制、视图、索引等相关操作。掌握这些经典SQL语句...
MyBatis提供了简单易用的API来实现数据库操作,例如select、insert、update、delete等。MyBatis还提供了动态SQL语句生成机制,例如使用#{name}占位符来动态生成SQL语句。 Hibernate提供了强大的一致性持久层框架,...
首先,我们需要从数据库中获取到要删除的对象,然后调用delete()方法,Hibernate会自动执行对应的DELETE SQL语句。 **4. 修改(Update)** 更新数据则通过Session的update()方法完成。当我们修改了一个持久化对象的...
最后,`<sql-insert>`, `<sql-update>`和`<sql-delete>`分别定义了自定义的SQL语句,用于插入、更新和删除操作。 三、Hibernate配置基础 要使用Hibernate,首先需要进行基本的配置,这通常在hibernate.cfg.xml文件...
本文将详细讲解如何使用Hibernate来编写通用的数据库操作代码,包括插入(insert)、删除(delete)、更新(update)以及查询(select)方法。 1. 插入数据(insert) 插入数据的方法是通过调用`session.save()`...
`dynamic-insert="true"`表示在保存对象时,只有非空字段才会被包含在`insert`语句中,而`dynamic-update="true"`则意味着只有字段值发生变化时,才会包含在`update`语句中。它们的默认值都是`false`。 5. `<class>...
Session会在清理缓存时执行DELETE语句。 #### 九、事务管理 为了确保数据的一致性和完整性,Hibernate提供了对事务的支持。通常情况下,事务的管理可以通过如下方式实现: ```java Session session = null; ...
2. **自动SQL生成**: 根据对象的状态,Hibernate 自动生成合适的INSERT, UPDATE, DELETE SQL语句,实现了透明的数据访问。 3. **查询语言(HQL)**: Hibernate 提供了自己的查询语言 Hibernate Query Language (HQL...
例如,当一个对象被创建、更新或删除时,Hibernate 能够自动处理对应的 INSERT、UPDATE 或 DELETE SQL 语句,使对象与数据库保持一致。 3. `hibernate.cfg.xml` 是 Hibernate 的主要配置文件,它包含了数据库连接...
- **dynamic-insert**: 是否动态插入 SQL 语句,仅插入非空字段。 - **select-before-update**: 更新前是否先查询实体。 - **polymorphism**: 多态映射类型。 - **where**: 在查询时添加额外的 WHERE 子句。 - **...
删(Delete):删除对象时,先通过`session.load()`或`session.get()`获取对象,然后调用`session.delete(book)`,Hibernate会执行DELETE语句。确保对象在Session的缓存中,否则可能找不到对象导致异常。 查(Query...
例如,它们可能包括了保存(insert)、更新(update)、删除(delete)和查询(select)数据的方法,这些方法可能是基于JdbcTemplate或者HibernateTemplate实现的。 JdbcTemplate是Spring提供的一个数据库访问组件...
这种方法适用于执行DML(数据操纵语言)语句,如INSERT、UPDATE和DELETE,但不适用于查询。 3. **使用`@NamedNativeQuery`注解** 如果你希望在配置文件中预定义一个原生SQL查询,可以使用`@NamedNativeQuery`注解...
- 通过DELETE语句删除记录。 - **3.3 使用HQL** - **3.3.1 HQL是什么** - HQL(Hibernate Query Language)是一种面向对象的查询语言,类似于SQL,但更加强调对象的概念。 - **3.3.2 查询** - 使用`select`语句...
Hibernate在初始化时会预定义insert、update、delete和select语句,并存储在SessionFactory的缓存中。默认情况下,这些SQL语句包含所有字段。若要更新部分字段,可以使用`dynamic-insert`和`dynamic-update`属性,使...
它们会根据模型的属性生成INSERT、SELECT、UPDATE、DELETE语句,甚至更复杂的JOIN和子查询。 3. 工具支持:除了ORM库,还有一些专门的代码生成工具,如MyBatis Generator、DBDiffSync等,能够根据数据库表结构或者...