如何知道上一篇的动态INSERT的话,动态UPDATE就很简单了,直接上XML
注意:如果<isNotEmpty>是写在一行的话,并且是第一个的话
<isNotEmpty property="realName" prepend=","><![CDATA[ REALNAME = #realName# ]]></isNotEmpty>
内容注意中间加个空格,不然会出现 update role setname=xxx 直接报错
<update id="updateRole" parameterClass="com.mmblue.model.Role">
<![CDATA[
UPDATE role
SET
gmt_modified = to_date(#gmtModified#,'yyyy-mm-dd hh24:mi:ss'),
modifier = #modifier#
]]>
<dynamic>
<isNotEmpty property="isDeleted" prepend=",">
<![CDATA[
is_deleted = #isDeleted#
]]>
</isNotEmpty>
<isNotEmpty property="roleCode" prepend=",">
<![CDATA[
role_code = #roleCode#
]]>
</isNotEmpty>
<isNotEmpty property="roleName" prepend=",">
<![CDATA[
role_name = #roleName#
]]>
</isNotEmpty>
<isNotEmpty property="deptId" prepend=",">
<![CDATA[
dept_id = #deptId#
]]>
</isNotEmpty>
</dynamic>
<![CDATA[
WHERE id = #id#
]]>
</update>
2.再来个全部遍历的
<update id="updateUser" parameterClass="com.mmblue.domain.User">
UPDATE MYIVR_TUSER
<dynamic prepend="SET ">
<isNotEmpty property="realName" prepend=","><![CDATA[ REALNAME = #realName# ]]></isNotEmpty>
<isNotEmpty property="password" prepend=","><![CDATA[ PASSWORD = #password# ]]></isNotEmpty>
<isNotEmpty property="projectId" prepend=","><![CDATA[ PROJECT_ID = #projectId# ]]></isNotEmpty>
<isNotEmpty property="isEable" prepend=","><![CDATA[ ISENABLE = #isEable# ]]></isNotEmpty>
<isNotEmpty property="createTime" prepend=","><![CDATA[ CREATETIME = #createTime# ]]></isNotEmpty>
<isNotEmpty property="name" prepend=","><![CDATA[ USERNAME = #name# ]]></isNotEmpty>
<isNotEmpty property="id" prepend=","><![CDATA[ USERID = #id# ]]></isNotEmpty>
<isNotEmpty property="isFirstLogin" prepend=","><![CDATA[ ISFIRSTLOGIN = #isFirstLogin# ]]></isNotEmpty>
</dynamic>
<dynamic prepend="WHERE">
USERID = #id#
</dynamic>
</update>
分享到:
相关推荐
"iBATIS_02_addSequence_add_del_update_sel_sellike" 这个主题可能涉及到在 iBATIS 中进行数据操作的一些核心功能,包括添加(add)、删除(del)、更新(update)、选择(sel)以及类似(sellike)查询。...
动态XML是MyBatis提供的一种灵活的SQL编写方式,允许在XML映射文件中动态地构建SQL语句。 首先,让我们来深入了解一下MyBatis的动态SQL。动态SQL是MyBatis的一个强大特性,它允许你在XML映射文件中编写条件语句,...
Ibatis API 的一个重要特点是动态SQL,它允许在XML配置文件或Mapper接口注解中编写条件语句,使得SQL的生成更加灵活,适应复杂的业务场景。 在实际开发中,Ibatis API 可以与Spring框架集成,通过Spring的`...
iBatis,现已被MyBatis取代,是Java中的一个持久层框架,它简化了数据库操作,通过XML或注解的方式将SQL与Java代码绑定,避免了传统的JDBC代码编写工作,提高了开发效率和代码的可读性。它处理结果映射,事务管理,...
### ibatis应对批量update 在处理大量数据更新时,传统的for循环方式往往会导致效率低下。这是因为每一次循环都需要执行一次数据库连接操作,对于批量更新来说,这样的处理方式显然不够高效。为了解决这个问题,...
- **动态SQL**:掌握如何使用iBATIS的动态SQL功能,实现条件语句和循环结构的动态构建。 ### iBATIS在现实世界的应用 - **性能优化与缓存**:了解如何利用iBATIS的缓存机制来提高应用性能,减少数据库访问次数。 -...
6. **Dynamic SQL**:允许在XML映射文件中进行条件判断,动态生成SQL语句,提高了SQL的灵活性和复用性。 7. **Transactions**:SQL Maps支持声明式和编程式的事务管理,确保数据的一致性和完整性。 通过使用iBATIS...
iBATIS 支持动态 SQL,即根据运行时的条件动态构建 SQL 语句。这包括: - **二进制条件元素**:例如 `<if>` 和 `<choose>` 等元素,用于构建复杂的条件逻辑。 - **简单动态 SQL 元素**:如 `<where>` 和 `<set>` 等...
Ibatis提供强大的动态SQL功能,允许在XML映射文件中进行条件判断、循环等复杂操作,如`<if>`, `<choose>`, `<when>`, `<otherwise>`, `<where>`, `<foreach>`等标签。 五、Mapper接口与注解 1. Mapper接口:定义...
这些SQL语句主要用于Oracle数据库中,涉及到了删除、插入以及查询等基本操作,并且在ibatis框架中实现了参数化处理。 ### 一、删除操作 首先我们来看第一条SQL语句: ```xml parameterClass="long"> delete ...
5. **动态SQL**:探索 iBATIS 如何通过`<if>`、`<choose>`、`<when>`、`<otherwise>`等标签实现条件判断和动态SQL生成。 6. **事务管理**:理解 iBATIS 的事务控制机制,包括自动和手动提交、回滚和隔离级别设置。 ...
1. 动态SQL:Ibatis-SqlMap支持在XML映射文件中编写动态SQL,使得SQL生成更加灵活。 2. 缓存机制:提供了一级缓存和二级缓存,能够提高数据访问效率。 3. 映射文件和Java代码分离:通过XML配置文件,将SQL逻辑和业务...
本文将详细介绍ibatis中的SQL语句编写方法,主要包括查询、插入、更新和删除等基本操作,并通过一个具体的例子来加深理解。 #### 二、ibatis简介 Ibatis是一个基于Java的持久层框架,它支持定制化SQL、存储过程...
在业务逻辑中,我们通常会通过Mapper接口与数据库进行交互,这些接口的定义与XML配置文件中的SQL语句相对应,这样就实现了SQL语句的动态绑定。 1. SqlSessionFactoryBuilder:这个类用于构建SqlSessionFactory。...
此外,该工具可能还包含了对复杂的查询条件的支持,比如模糊搜索、分页查询等,这些在生成的SQL中会以动态SQL的形式出现,使得代码更加简洁和易于维护。对于大型项目而言,这种自动化生成的功能能够显著减少编码时间...
在实际应用中,iBATIS的一个显著优点是它可以灵活地处理复杂的SQL,而不像ORM框架那样将SQL完全抽象化。这使得开发者可以充分利用数据库的特性,提高查询效率。然而,这也意味着开发者需要对SQL有较深入的理解。 总...
iBATIS 的动态SQL功能允许开发者在XML配置文件中编写条件化的SQL语句,可以根据实际参数来决定SQL的执行部分。这大大增加了SQL的灵活性,避免了因为硬编码而导致的重复SQL语句。 **事务管理** iBATIS 提供了事务...
4. 动态SQL:iBatis的一大亮点是其动态SQL功能,允许在XML映射文件中根据条件构建SQL语句。例如,if、choose、when、otherwise、where等标签,极大地提高了SQL的可维护性和灵活性。 5. ResultMap:ResultMap用于...
在Ibatis中,`sql-map`和`sql-map-config`是两个重要的XML配置文件,它们使用DTD(Document Type Definition)来定义其结构和规则。 DTD是XML文档类型定义,它定义了XML文档的合法构建块,包括元素、属性、实体等,...