`

mybatis selectkey uuid

 
阅读更多

                           

通过修改sql映射文件,可以将mysql自增主键返回:

<insert id="insertUser" parameterType="cn.itcast.mybatis.po.User">

       <!-- selectKey将主键返回,需要再返回 -->

       <selectKey keyProperty="id" order="AFTER" resultType="java.lang.Integer">

           select LAST_INSERT_ID()

       </selectKey>

       insert into user(username,birthday,sex,address)

        values(#{username},#{birthday},#{sex},#{address});

    </insert>

添加selectKey实现将主键返回

keyProperty:返回的主键存储在pojo中的哪个属性

order:selectKey的执行顺序,是相对与insert语句来说,由于mysql的自增原理执行完insert语句之后才将主键生成,所以这里selectKey的执行顺序为after

resultType:返回的主键是什么类型

LAST_INSERT_ID():是mysql的函数,返回auto_increment自增列新记录id值。







需要增加通过select uuid()得到uuid值



<insert  id="insertUser" parameterType="cn.itcast.mybatis.po.User">

<selectKey resultType="java.lang.String" order="BEFORE"

keyProperty="id">

select uuid()

</selectKey>

insert into user(id,username,birthday,sex,address)

       values(#{id},#{username},#{birthday},#{sex},#{address})

</insert>

注意这里使用的order是“BEFORE”

  oracle  主键生成:

               

首先自定义一个序列且用于生成主键,selectKey使用如下:

<insert  id="insertUser" parameterType="cn.itcast.mybatis.po.User">

<selectKey resultType="java.lang.Integer" order="BEFORE"

keyProperty="id">

SELECT 自定义序列.NEXTVAL FROM DUAL

</selectKey>

insert into user(id,username,birthday,sex,address)

       values(#{id},#{username},#{birthday},#{sex},#{address})

</insert>

注意这里使用的order是“BEFORE”
分享到:
评论

相关推荐

    spring boot整合mybatis利用Mysql实现主键UUID的方法

    主要给大家介绍了关于spring boot整合mybatis利用Mysql实现主键UUID的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧。

    MyBatis_Select

    本示例将深入探讨`Select`元素在MyBatis映射器中的应用。 在MyBatis中,`&lt;select&gt;`元素主要用于执行查询操作,如获取单个记录、多条记录或执行无返回值的SQL。下面,我们将详细解析`&lt;select&gt;`元素的各个属性及其...

    Mybatis示例之SelectKey的应用

    Mybatis示例之SelectKey的应用 Mybatis是一种流行的持久层框架,提供了简洁的数据持久化解决方案。今天我们将讨论Mybatis的一个重要特性:SelectKey。SelectKey是Mybatis提供的一种机制,用于解决Insert数据时不...

    spring boot 整合mybatis,基于@Select注解方式

    本教程将详细介绍如何在Spring Boot项目中整合MyBatis,并使用@Select注解来实现数据库查询。 首先,我们需要在Spring Boot项目中引入MyBatis的依赖。在`pom.xml`文件中添加如下依赖: ```xml &lt;groupId&gt;org....

    SAP Hana 创建序列 +mybatis查询

    SAP HANA 创建 sequence,及查询Dummy,和Mybaits 查询

    Mybatis 处理 CLOB、BLOB 类型数据

    &lt;selectKey keyProperty="id" resultType="int" order="BEFORE"&gt; select my_seq.nextval from dual &lt;/selectKey&gt; insert into user_pics(id, name, pic, bio) values(#{id}, #{name}, #{pic}, #{bio}) ...

    Mybatis中注解@MapKey的使用详解

    在Mybatis框架中,@MapKey注解是一个非常实用的功能,它允许我们将查询结果转换成一个Map对象,其中键(key)由我们指定的字段值决定,值(value)则是查询返回的完整行数据。这在处理多条记录时特别有用,尤其是在结果...

    Mybatis高级多表查询学习 -懒加载 SQL

    全部代码

    MyBatis.pdf

    MyBatis 提供了多种主键回填方式,包括使用动态代理方式实现主键回填、使用 selectKey 标签实现主键回填和使用 UUID 或时间戳生成唯一主键。 MyBatis 的SQL 语句构建 MyBatis 提供了多种 SQL 语句构建方式,包括 ...

    MyBatis SELECT基本查询实现方法详解

    主要介绍了MyBatis SELECT基本查询实现方法详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

    mybatis demo mybatis 实例

    MyBatis是一款优秀的持久层框架,它支持定制化SQL、存储过程以及高级映射。MyBatis避免了几乎所有的JDBC代码和手动设置参数以及获取结果集。MyBatis可以使用简单的XML或注解进行配置和原始映射,将接口和Java的POJOs...

    SpringBoot+Mybatis,返回Map的时候,将Map内的Key转换为驼峰的命名

    @Select("SELECT * FROM user") Map, Object&gt; getAllUsers(); } ``` 然后在Service层中调用`MapUtils.toCamelCaseMap`进行转换: ```java @Service public class UserService { @Autowired private UserMapper...

    MyBatis入门到精通

    MyBatis允许你在Java接口方法上直接写SQL,使用`@Select`、`@Insert`、`@Update`和`@Delete`等注解,简化了开发过程。 5. **MyBatis注解方式** 使用注解的方式,可以将映射文件中的内容直接写在Mapper接口的方法...

    mybatis入门案例 mybatis入门案例

    mybatis入门案例mybatis入门案例mybatis入门案例mybatis入门案例mybatis入门案例mybatis入门案例mybatis入门案例mybatis入门案例mybatis入门案例mybatis入门案例mybatis入门案例mybatis入门案例mybatis入门案例...

    springboot整合mybatis案例(xml方式)

    XML文件包含`&lt;mapper&gt;`标签,内含`&lt;select&gt;`, `&lt;insert&gt;`, `&lt;update&gt;`, `&lt;delete&gt;`等标签,分别对应SQL的查询、插入、更新和删除操作。 - **namespace属性**:XML文件的`&lt;mapper&gt;`标签需设置`namespace`属性,值为...

    mybatis练习3mybatis练习3mybatis练习3mybatis练习3

    mybatis练习3mybatis练习3mybatis练习3mybatis练习3mybatis练习3mybatis练习3mybatis练习3mybatis练习3mybatis练习3mybatis练习3mybatis练习3mybatis练习3mybatis练习3mybatis练习3mybatis练习3mybatis练习3mybatis...

    mybatis,mybatis+mysql

    在XML映射文件中,你可以使用`&lt;select id="callProcedure" parameterType="map" resultType="map"&gt;`标签来调用存储过程,参数和结果可以通过Map对象传递。 5. **分页查询**:在MyBatis中实现分页查询,你可以使用`...

    mybatis 3.2.6

    MyBatis是一个优秀的Java持久层框架,它支持定制化SQL、存储过程以及高级映射。MyBatis避免了几乎所有的JDBC代码和手动设置参数以及获取结果集。MyBatis可以使用简单的XML或注解进行配置和原始映射,将接口和Java的...

    MyBatis-3.4.6.zip

    MyBatis是一个优秀的Java持久层框架,它支持定制化SQL、存储过程以及高级映射。MyBatis避免了几乎所有的JDBC代码和手动设置参数以及获取结果集。MyBatis可以使用简单的XML或注解进行配置和原始映射,将接口和Java的...

    mybatis-3-config/mapper.dtd 解决mybatis头文件报错

    然后打开eclipse -&gt;Window-&gt;prefenrence-&gt;XML-&gt;XML Catalog-&gt;User Specifiled Entreis-&gt;Add-&gt;Location(此处是你放dtd文件的位置例如:‪D:\mybatis\mybatis-3-config.dtd)-&gt;Key(如果更改config,此处应该是:-//...

Global site tag (gtag.js) - Google Analytics