`
zcz123
  • 浏览: 157516 次
  • 性别: Icon_minigender_1
  • 来自: 厦门
社区版块
存档分类

mybatis mysql 主键自增长

 
阅读更多

MyBatis 插入时候获取自增主键

方法有二

 

方法1-1:

 

    <insert id="insert" parameterType="Person" useGeneratedKeys="true" keyProperty="id">

        insert into person(name,pswd) values(#{name},#{pswd})

    </insert> 

 

方法1-2:

 

    <insert id="insert" parameterType="Person">

        <selectKey keyProperty="id" resultType="long">

            select LAST_INSERT_ID()

        </selectKey>

        insert into person(name,pswd) values(#{name},#{pswd})

    </insert>

 

方法2:

 

@Id

 

@GeneratedValue(strategy=GenerationType.IDENTITY)

 

int id;

 

insert插入后可以通过getId()获取id

采用注解方式,经测试需要给主键设置自增长。

 

 

 

  • 大小: 30.6 KB
分享到:
评论

相关推荐

    MyBatis主键自动生成方法.pdf

    在MyBatis中,主键自动生成是一种常见且实用的功能,尤其在与支持自动增加主键的数据库(如MySQL)配合使用时。当我们在插入数据时,有时希望数据库能够自动为新记录生成唯一的主键值,而不是手动指定。MyBatis提供...

    mybatis 获取mysql插入记录的自增长字段值.pdf

    在MySQL中,某些字段通常设置为自增长,比如订单ID,这种字段在新记录插入后会自动递增,无需手动赋值。在上述场景下,我们经常需要在插入数据后获取这个自增长的ID值,以便进一步处理,如将订单ID关联到其他表。...

    MyBatis Oracle 自增序列的实现方法

    本文将详细讲解如何在MyBatis中实现Oracle的自增序列,并配置MyBatis以支持Oracle的主键自增长。 首先,你需要在Oracle数据库中创建一个序列对象。例如,你可以创建一个名为`SEQ_TABLE`的序列: ```sql CREATE ...

    Mybatis 插入一条或批量插入 返回带有自增长主键记录的实例

    Mybatis 插入一条或批量插入 返回带有自增长主键记录的实例 Mybatis 是一个基于 Java 的持久层框架,它提供了对数据库的访问和操作的功能。今天,我们将分享一个关于 Mybatis 插入一条或批量插入 返回带有自增长...

    MyBatis在insert插入操作时返回主键ID的配置(推荐)

    其中,`keyProperty` 表示返回的 ID 要保存到对象的那个属性中,而 `useGeneratedKeys` 表示主键 ID 为自增长模式。 例如: ```xml insert into user (user_id, user_name, modified, state) values (#{userId,...

    Mybatis使用useGeneratedKeys获取自增主键的方法

    这个特性在处理像MySQL、SQL Server等支持自动增长字段的数据库时特别有用,可以避免进行额外的查询来获取新插入记录的主键。本文将深入探讨`useGeneratedKeys`的工作原理以及它在批量插入和`ON DUPLICATE KEY ...

    利用Java的MyBatis框架获取MySQL中插入记录时的自增主键

    + "\n刚刚插入记录的主键自增长值为:" + spares.getId()); } ``` 此外,还有一种方法是使用`&lt;selectKey&gt;`标签。`&lt;selectKey&gt;`允许在插入语句之前或之后执行一个查询,以获取自增主键。例如: ```xml select ...

    Mybatis案例一所用建表语句

    `id`字段是主键,自动增长;`username`和`password`字段不允许为空;`email`字段允许为空,且设置了默认的字符集为utf8。 Mybatis是如何与这些表交互的呢?在Mybatis的配置文件中,我们需要指定数据源和SQL映射文件...

    mybatis insert返回主键代码实例

    对于 MySQL 数据库,使用 `selectKey` 元素可以获取自动增长的主键值,示例代码如下: ```xml insert into user (name,password) values (#name#,#password#) SELECT LAST_INSERT_ID() AS ID ``` 在上面...

    尚硅谷Mybatis视频教程11-20

    第17、18集则关注于自增主键的处理,17集展示了如何获取插入后自动生成的主键,通常在MySQL等支持自动增长主键的数据库中使用。而在18集中,针对Oracle数据库,讲解了如何利用序列来生成主键,这是Oracle数据库特有...

    Mybatis入门.doc

    在本例中,我们创建了一个名为`student`的表,包含`id`(主键,自动增长),`name`(姓名)和`age`(年龄)三个字段。表结构如下: ```sql CREATE TABLE `student` ( `id` int(11) NOT NULL AUTO_INCREMENT, `name` ...

    Mybatis增强工具包(Mybatis plus) v3.5.3.2.zip

    提供了多种主键生成策略,包括 Identity(自动增长)、Sequence(序列)、雪花算法等,可以根据不同的数据库环境选择合适的策略。 7. **自定义全局配置**: 可以通过配置文件或注解来设定全局的配置,如逻辑删除...

    mybatis类生成器

    2. **表配置**:在`&lt;table&gt;`标签中,我们可以指定要生成代码的数据库表,包括表名、是否生成主键(如果表有自动增长的主键字段)等。例如: ```xml enableUpdateByExample="false" enableDeleteByExample="false...

    mybatisGenerator.rar

    3. 主键策略:支持多种主键生成策略,如Identity(自动增长)、Sequence(序列)或自定义的KeyGenerator。 4. 数据库兼容性:MBG支持多种主流的数据库,如MySQL、Oracle、SQL Server等。 5. 增删改查方法:MBG会为...

    mybatis-generator-1.3.5

    11. **主键策略**:MBG提供了多种主键生成策略,如自动增长、序列、UUID等,适应不同数据库环境的需求。 12. **自定义扩展**:如果默认的生成规则不能满足需求,开发者可以通过实现MBG的插件机制来自定义扩展,比如...

    mybatis-generator

    - **主键生成策略**:支持多种主键生成策略,如序列、自动增长等。 5. **自定义模板**: MBG允许用户通过自定义模板来自定义生成的Java代码和XML文件,以满足特定的编码规范或项目需求。 6. **版本更新**: `...

    mybatis文档

    - MySQL:利用自增长特性,通过 SQL 语句 `SELECT LAST_INSERT_ID()` 获取最后插入行的 ID。 #### 7. 关联关系处理 - **处理方式**:支持多种关联查询方式,包括连接查询和两次查询方式。 - 一对多:使用连接...

    mybatis-plus-3.0.zip

    4. **主键策略**:MyBatis-Plus 支持多种主键生成策略,包括 Identity(自动增长)、Sequence(序列)、雪花算法等,可以根据不同的数据库类型选择合适的策略。 5. **批量操作**:支持批量插入、更新和删除,可以一...

    使用mybatis-plus的insert方法遇到的问题及解决方法(添加时id值不存在异常)

    但是,这仅适用于数据库支持自增且数据类型为整数的情况,如 MySQL 的 `INT AUTO_INCREMENT`。 总之,避免 MyBatis-Plus 插入时的“id 值不存在异常”,关键在于正确地配置 `@TableId` 注解,以及确保插入的数据...

    MyBatis教程.docx

    - 在 "isoft" 数据库中创建一个名为 "user" 的表,包含字段 `id`(主键,自动增长)、`name`、`dept`、`website` 和 `phone`。 4. **创建 MyBatis 配置文件**: - 在 `src/config` 目录下创建 `Configure.xml` ...

Global site tag (gtag.js) - Google Analytics