`

iBatis中insert语句返回插入后id的方法

    博客分类:
  • Java
阅读更多

一直都在用iBatis来完成数据的持久化操作,可是一直都不知道如何才能把insert后的id返回回来,在网上找了好久终于试成了,与大家分享一下。具体方法是在定义insert 语句的时候在原有的语句后面加上selectKey标签,例如

 

<insert id="user.insert" parameterClass="user">
		insert into 
			user
		set
			COL1=#col1:VARCHAR#,
			COL2=#col2:VARCHAR#
	<selectKey resultClass="int" keyProperty="id" >
		  SELECT @@IDENTITY AS id
	</selectKey> 
</insert>

 在java程序中只需要使用

return Integer.parseInt(this.getSqlMapClientTemplate().insert("user.insert",user).toString());
即可将插入对象的id返回。 

 

 

分享到:
评论
5 楼 binbinhu1987 2010-05-18  
不错,这东西用的不太深入
4 楼 yzsunlight 2010-05-04  
这个东西 早期已用过 再次复习一下
3 楼 www1231985 2010-05-04  
很不错 学习了
我这个东西用的还不深
2 楼 lectery 2010-05-04  
引用
哈哈,我很久以前就知道了 。
这个东西可是困扰了我很长时间~
1 楼 fengmy123 2010-05-01  
哈哈,我很久以前就知道了 。

相关推荐

    Ibatis常用sql语句

    根据给定的文件信息,以下是对“Ibatis常用SQL语句”的详细解析,涵盖了一系列Ibatis在数据操作中的应用实例。 ### Ibatis简介 Ibatis是一个支持普通SQL查询、存储过程以及高级映射的优秀持久层框架。Ibatis可以让...

    ibatis16个常用sql语句

    在iBatis中,SQL语句是通过XML文件来配置的。下面是16个常用的iBatis SQL语句,涵盖了基本的CRUD(Create、Read、Update、Delete)操作。 1. 删除语句 在iBatis中,删除语句可以使用`&lt;delete&gt;`元素。例如: ```xml...

    ibatis常用sql语句

    iBATIS通过`&lt;iterate&gt;`标签支持数组的遍历,将数组中的每个元素作为独立的值插入到SQL语句中。例如,`(" close=")" conjunction=","&gt;`这段代码会将`actionIds`数组中的每个元素以逗号分隔的形式插入到SQL语句中,...

    ibatis UPDATE 动态XML与insert

    标题 "ibatis UPDATE 动态XML与insert" 涉及到的是MyBatis框架中对数据库数据进行更新(UPDATE)和插入(INSERT)操作的动态XML配置方式。MyBatis是一个优秀的持久层框架,它支持定制化SQL、存储过程以及高级映射,...

    ibatis sql 语句的编写

    本文将详细介绍ibatis中的SQL语句编写方法,主要包括查询、插入、更新和删除等基本操作,并通过一个具体的例子来加深理解。 #### 二、ibatis简介 Ibatis是一个基于Java的持久层框架,它支持定制化SQL、存储过程...

    iBatis执行非查询语句(CRUD,函数和过程)

    开发者需要在Mapper XML文件中定义一个INSERT语句,然后在对应的Java接口中声明一个方法。当调用该方法时,iBatis会自动处理SQL的执行和结果。 2. 读取(Read):读取数据通常使用SELECT语句。同样,在XML文件中定义...

    ibatis教程_插入一个实体对象.rar

    这里,`"User.insertUser"`是SQL映射文件中的namespace和id的组合,`user`对象作为参数传递给SQL语句。 四、动态SQL iBATIS支持动态SQL,可以根据需要生成不同的SQL语句。例如,你可以使用`if`、`choose`(`when`、...

    ibatis结合oracle批量插入三种方法的测评

    这种方法使用iterate标签来批量插入数据,但是Oracle不支持一个insert语句中包含多个values的方式。这意味着,如果你想插入多行数据,你需要执行多个insert语句,这将导致性能问题。例如: ``` &lt;insert id="insert_...

    springMVC和ibatis实现sql2005数据库插入案例

    - 在对应的XML文件中编写SQL插入语句,如`&lt;insert id="insertUser" parameterType="com.example.User"&gt;...&lt;/insert&gt;` 6. **Service层** - 创建UserService接口和实现类,定义业务逻辑,如`void addUser(User user...

    ibatis的批量插入DAO实例

    默认情况下,Ibatis会自动提交每个单独的INSERT语句,这可能并不是最高效的。可以在MyBatis的配置文件中调整`defaultExecutorType`为`BATCH`,以启用批处理模式,这样所有的SQL语句会在一次数据库事务中执行,大大...

    ibatis常用的sql

    这些SQL语句主要用于Oracle数据库中,涉及到了删除、插入以及查询等基本操作,并且在ibatis框架中实现了参数化处理。 ### 一、删除操作 首先我们来看第一条SQL语句: ```xml &lt;delete id=...

    ibatis 中sqlMap配置

    总结来说,iBatis中的SQLMap配置涉及到命名空间、别名、插入操作、主键获取、参数类型和结果映射等多个方面,理解和熟练掌握这些知识点对于高效地使用iBatis框架至关重要。通过合理的配置,可以有效地将Java代码与...

    ibatis2.0中文API

    SqlMapClient作为主要的对外接口,提供了操作数据库的基本方法,如插入、更新、删除和查询。SqlMapSession则代表了一个数据库会话,它封装了具体的数据库操作,支持事务管理和结果集的映射。 总结来说,iBATIS 2.0...

    ibatis 中文api

    接口中的方法名与XML中的ID相同,通过`@Select`、`@Insert`、`@Update`、`@Delete`等注解,将SQL语句绑定到方法上。 4. **动态SQL**:Ibatis的动态SQL功能非常强大,可以在SQL语句中使用条件标签(`&lt;if&gt;`、`...

    ibatis 注解配置文件

    在传统的XML配置文件中,Ibatis允许我们定义SQL语句、参数映射以及结果集映射。然而,随着Java注解的普及,Ibatis也支持使用注解来进行配置,使得代码更加简洁易读。 1. **@Select**: 这个注解用于标记一个方法,该...

    Ibatis培训教程

    Ibatis 的映射文件与 SQL 语句在 Ibatis 中,SQL 语句和 Java 对象之间的映射是通过 XML 文件或者注解完成的。以 XML 文件为例,User.xml 中可能会包含如下的映射信息: ```xml &lt;select id="selectAllUsers" ...

    一个最简单的IBatis增删改查操作例子

    3. 服务类中,修改`User`对象后,调用`updateUser`方法,传入ID和更新后的`User`对象。 **删除(Delete)**: 1. XML文件中,定义一个`delete`标签,编写DELETE语句,根据ID删除用户。 2. `UserMapper`接口添加`...

    04_ibatis教程_插入一个实体对象.zip

    `@Insert`注解可以用来标记插入方法,但在这里,我们通常会直接使用接口方法名与XML文件中的`id`对应。 ```java public interface UserMapper { void insertUser(User user); } ``` 4. **配置...

    ibatis简单CRUD例子

    在Ibatis中,我们定义一个Insert语句,并在Mapper接口中声明对应的方法。例如: ```xml &lt;!-- mapper.xml配置 --&gt; &lt;insert id="insertUser"&gt; INSERT INTO users(name, age) VALUES (#{name}, #{age}) &lt;/insert&gt;...

Global site tag (gtag.js) - Google Analytics