返回值竟然是id
ibatis的SqlMapClient的insert方法是有返回值的,类型是object,包裹的其实就是刚刚插入的自增长字段的值。请注意,配置文件要这样写:
-
<
insert
id
=
"insertJizhan"
parameterClass
=
"Jizhan"
>
-
INSERT INTO jizhan (
-
name
-
) VALUES (
-
#name#
-
)
-
<
selectKey
resultClass
=
"int"
keyProperty
=
"gid"
>
-
SELECT lastval() AS gid
-
</
selectKey
>
-
</
insert
>
这里lastval()是postgres中得到刚刚插入的自增长字段值的函数,SQL中用@@IDENTITY。即:
<selectKey resultClass="int" keyProperty="id"
>
SELECT @@IDENTITY AS ID
</selectKey>
相关推荐
增删改操作会涉及到INSERT、DELETE、UPDATE语句,而查询可能包括简单的SELECT语句,也可能涉及复杂的JOIN、GROUP BY和HAVING子句。 在实际应用中,项目的具体实现可能还包括以下步骤: 1. 配置Spring MVC:设置 ...
在IT行业中,数据库操作是应用程序开发中的重要环节,而Ibatis作为一款轻量级的Java持久层框架,为开发者提供了方便的数据访问接口。本篇将深入探讨如何在Ibatis中实现批量插入数据的DAO(Data Access Object)实例...
5.iBatis2学习笔记:入参和返回值的问题.doc 6.iBatis2学习笔记:一对多映射(双向).doc 7.iBatis2学习笔记:多对多映射(双向) .doc 8.iBatis2学习笔记:总结与思考.doc 9.iBatis2实体状态图解.doc 10.iBatis ...
通过"Ibatis-api.chm",开发者可以详细了解这些组件的使用方式、方法签名、参数以及返回值,更好地掌握Ibatis框架,提高开发效率。Ibatis的强大之处在于它的灵活性和易用性,它允许开发者编写复杂的SQL,同时避免了...
API JavaDoc是Java开发中的一个重要参考资料,它详细记录了每个类、接口、方法以及它们的参数、返回值和异常等信息,还包括了类或方法的简短描述。对于iBATIS 2.3,你可以在这里找到以下关键知识点: 1. **...
对于输入参数,可以在Java方法的参数列表中声明,并在SQL映射文件的`<select>`或`<insert>`标签中使用`parameterMap`或`parameterType`来指定参数。参数可以通过`#{paramName}`的方式引用,这里的`paramName`是Java...
相应的XML配置文件中,定义了SQL语句及其参数和返回值类型: ```xml SELECT * FROM users WHERE id = #{id} <insert id="insertUser" parameterType="com.example.User"> INSERT INTO users (name, age) ...
7. **返回值参数类型(Result Class/Result Map)**: 结果集的类型有两种指定方式:`resultClass`和`resultMap`。如果列名与类属性完全匹配,使用`resultClass`指定查询结果类型。当列名与属性名不匹配时,应使用`...
4. **存储过程调用**:演示如何在IBatis中调用MySQL的存储过程,包括传递参数和接收返回值的方法。 5. **异常处理**:介绍在处理数据库操作时可能出现的异常,以及如何优雅地捕获和处理这些异常。 6. **性能优化**...
<insert id="addUser" parameterClass="com.longsky.ibatis.user.model.User"> insert into user_table(username, password, dept, role) values (#username#, #password#, #dept#, #role#) </insert> ...
2. 执行SQL:使用SqlSession的`selectList()`、`insert()`、`update()`或`delete()`方法执行SQL,根据需求传递参数。 3. 处理结果:对于查询操作,`selectList()`返回的是结果对象的列表;对于增删改操作,方法...
本文将围绕“Ibatis调用存储过程”这一主题展开讨论,旨在帮助读者理解并掌握在Ibatis中调用存储过程的方法。 #### 二、存储过程与Ibatis简介 ##### 2.1 存储过程简介 存储过程是一种在数据库中预先编译好的SQL...
6. **返回值类型(Result Class/Result Map)**: - `resultClass`:当结果集的列名与类属性名完全匹配时,可以直接使用`resultClass`指定返回结果的Java类型。 - `resultMap`:如果列名与属性名不匹配,或者需要...
iBATIS是一个优秀的Java持久层框架,它提供了一个SQL映射框架,使开发者能够将SQL语句与Java...通过阅读这两份文档,你不仅可以掌握iBATIS的使用方法,还能理解其设计理念,为今后的数据库访问层开发打下坚实的基础。
`@Insert`注解可以用来标记插入方法,但在这里,我们通常会直接使用接口方法名与XML文件中的`id`对应。 ```java public interface UserMapper { void insertUser(User user); } ``` 4. **配置...
在Java代码中,通过SqlSession的`insert()`方法执行插入操作。 2. **更新(Update)操作**: 使用`<update>`标签,与`<insert>`类似,`<update>`标签定义SQL更新语句。例如: ```xml UPDATE students SET ...
3. Mapper 接口:在 Java 代码中,我们定义与 Mapper XML 文件对应的接口,这些接口方法的参数和返回值类型会自动与 XML 中的 SQL 操作关联。 4. MyBatis-Spring 集成:为了在 Spring 框境下使用 Ibatis,我们需要...
SQL 映射文件(如 `student.xml`)是 Ibatis 的核心,其中的 `<select>`、`<insert>`、`<update>` 和 `<delete>` 标签分别对应 SQL 查询、插入、更新和删除操作。`id` 属性标识 SQL 语句,`resultClass` 定义返回...