在ibatis的insert操作中,会返回一个Object对象,这个对象就是返回的主键值,
而且是通过配置了selectKey才会返回的主键值,否则只会返回null,selectKey配置如下:
1、id是序列
<insert id="insertPerson-Oracl" parameterClass="person">
<selectKey resultClass="int" keyProperty="id">
SELECT STOCKIDSEQUENCE.NEXTVAL AS ID FROM DUAL
</selectKey>
insert into
PERSON(PER_ID,PER_FIRST.....)
values(#id#,#firstName#....);
</insert>
2、id是sys_guid()
<!-- module表中插入数据 -->
<insert id="insertModule" parameterClass="com.cbitech.csims.security.service.domain.SysModule">
<selectKey resultClass="java.lang.String" keyProperty="id">
<![CDATA[
SELECT sys_guid() AS GUID FROM DUAL
]]>
</selectKey>
<![CDATA[
INSERT INTO sys_module
(
ID,
PARENT_ID,
TITLE,
DESCRIPTION,
OPEN_FLAG,
CREATE_USER,
MODULE_NO,
CREATE_DATETIME
)
VALUES
(
#id#,
#parentId#,
#title#,
#description#,
#openFlag#,
#createUser#,
#moduleNo#,
#createDatetime#
)
]]>
</insert>
分享到:
相关推荐
1. **基本CRUD操作**:`IBatisDao`通常会包含增删改查(Create、Read、Update、Delete)的基本接口,如`insert()`, `select()`, `update()`, `delete()`。这些方法的实现会对应到具体的SQL映射文件,通过`SqlSession...
- **插入操作**:`insert()`方法用于将一个对象插入到数据库中,它会自动处理主键生成策略,如果表有自增主键,IBATIS会自动填充。 - **更新操作**:`update()`方法用于更新已存在的记录,它需要传入待更新的对象,...
在IT行业中,Ibatis是一个非常重要的持久层框架,它提供了SQL映射功能,使得开发者能够更灵活地控制数据库操作。本篇文章将详细讲解如何利用Ibatis实现数据的连接、增加、查询、删除和修改(CRUD)操作,以及.xml...
- `<select>`:定义查询语句,id为唯一标识,resultType或resultMap指定返回类型。 - `<insert>`:插入记录,使用`useGeneratedKeys`和`keyProperty`获取自增主键。 - `<update>`:更新记录。 - `<delete>`:...
6. **查询操作**:查询数据则使用`queryForObject`、`queryForList`等方法,可以根据ID执行SQL并返回结果。这些方法可以接受参数,通过动态绑定的方式匹配SQL中的条件。 7. **事务管理**:iBatis支持事务控制,可以...
在这里,`empty_clob()`函数用于创建一个空的CLOB对象,然后通过`RETURNING`子句返回,以便于iBATIS能够填充到Java对象中。 3. **更新操作**:更新CLOB字段时,通常需要先获取原始的CLOB对象,然后用新的值覆盖。...
在IT领域,数据库管理和操作是不可或缺的部分,而iBatis作为一个优秀的持久层框架,与MySQL数据库结合使用,能实现高效且灵活的数据操作。本篇文章将深入探讨如何利用iBatis进行MySQL数据库的增删改查操作,同时提供...
这里,`insertUser`是操作的ID,`parameterType`指定了传入参数的类型。`#{}`是Ibatis的占位符,用于传递对象的属性值。 对于更新操作,同样在Mapper XML中编写`update`标签,例如: ```xml <update id="update...
在IT行业中,Ibatis是一个非常流行的持久层框架,它提供了SQL映射功能,使得开发者能够更灵活地控制数据库操作。本篇文章将详细讲解如何在Ibatis中使用注解进行配置,帮助你理解并掌握这一重要技能。 首先,让我们...
### iBatis批量操作 #### 一、简介 在企业级应用开发中,数据库操作是不可或缺的一部分。为了提高效率和减少资源消耗,批量处理成为了一种常用的技术手段。本文将介绍如何利用iBatis框架进行批量添加、修改、删除...
例如,使用 `sqlMapClient.queryForObject(id, parameter)` 执行查询,`sqlMapClient.insert(id, parameter)` 插入数据等。 **Ibatis API** Ibatis 提供了一些基本的API,如查询、添加、删除和修改方法。通常,会...
2. **读取(Read)**:查询操作可以通过`select`标签完成,可以返回单个对象或结果集。例如,根据ID获取用户: ```java // Mapper接口 public interface UserMapper { User getUserById(int id); } ``` ```...
<insert id="insertUser" parameterType="com.ibatis.sample.User"> INSERT INTO t_user (id, name, sex) VALUES (#{id}, #{name}, #{sex}) </insert> <!-- 更新和删除语句类似 --> ``` 这里的 `namespace` ...
注意,`namespace`属性应与映射接口的全限定名相同,`id`属性对应于接口方法名,`resultType`或`parameterType`指定返回结果或参数类型。 4. **映射接口与XML关联**:在Java代码中,你需要创建一个与XML文件对应的...
例如,使用`<select id="callProcedure" resultType="map">`可以调用存储过程并返回结果。 四、动态SQL iBatis的一大特性是动态SQL,它允许在XML映射文件中编写条件语句,根据传入的参数动态构建SQL。这极大地提高...
根据给定的文件信息,以下是对“Ibatis常用SQL语句”的详细解析,涵盖了一系列Ibatis在数据操作中的应用实例。 ### Ibatis简介 Ibatis是一个支持普通SQL查询、存储过程以及高级映射的优秀持久层框架。Ibatis可以让...
2. **Mapper接口(StudentMapper)**: 定义操作学生信息的方法,如`selectById(int id)`、`insert(Student student)`等。 3. **Mapper XML文件(studentMapper.xml)**: 包含对应Mapper接口中方法的SQL语句和结果...
本文将详细介绍Ibatis如何实现简单的增删改查操作,并结合提供的源码进行深入理解。 首先,Ibatis的核心是SQL映射文件和SqlSessionFactory。SQL映射文件是XML格式的,其中包含了SQL语句及其参数映射,是Ibatis执行...
这里的`namespace`属性对应`Mapper`接口的全限定名,`id`是方法名,`resultType`或`parameterType`是返回或参数类型。 ### 4. Mapper接口与实现 创建对应的`UserMapper.java`接口: ```java public interface ...
在Ibatis中,我们可以在映射器接口中定义一个方法,如`insertUser(User user)`,然后在对应的XML映射文件中编写SQL插入语句。Ibatis会自动处理参数绑定和结果映射,使得代码更简洁。 “删”代表删除记录。同样地,...