spring mybatis 批量插入返回主键

1.模型

public class AzTest {    private Integer id;

private Integer age;

private String title;

public Integer getId() {        return id;    }

public void setId(Integer id) {        this.id = id;    }

public Integer getAge() {        return age;    }

public void setAge(Integer age) {        this.age = age;    }

public String getTitle() {        return title;    }

public void setTitle(String title) {        this.title = title == null ? null : title.trim();    }}

2.mapper
void insertAll(List<AzTest> list);

3.xml
<insert id="insertAll" parameterType="AzTest" keyProperty="id" useGeneratedKeys="true">  insert into az_test(age,title)  VALUES    (#{age},#{title})</insert>
时间: 2024-12-23 22:47:55

spring mybatis 批量插入返回主键的相关文章

MyBatis insert操作返回主键

在写毕业设计的时候总是发现有一些小的细节问题,比如说...... MyBatis insert操作后怎么返回主键? 原来不懂的时候是调用一个select语句,将刚刚insert的对象再传入进去查出主键,但是这么写主键就没有意义了,什么都可以放到数据库里面去查. 在说,这样也会引起很多其他的问题.比如说你要查一下post表,在你不知道post_id的情况下你利用了post_name去查询post对象. 万一post_name有重复的呢?怎么办?所以有了这篇博客. 网上有很多大神写了很多mybati

SQL 用于插入返回主键ID,一般和事务用在一起

一个例子保存的例子,用于插入返回主键ID--创建人:By justin Create PROC [dbo].[SaveCustomer] ( @CustomerName varchar(500), @pID int ) as Begin --插入数据 Insert Into Customer( CustomerName, pID ) values( @CustomerName , @pID ) select SCOPE_IDENTITY() End SQL 用于插入返回主键ID,一般和事务用在一

PostgreSQL使用MyBatis,insert时返回主键

MyBatis中普通的insert语句是这样的: <insert id="insert" parameterType="com.xxx.xxx.xxDo"> insert into "table_name" (key, value) values (#{key,jdbcType=VARCHAR}, #{value,jdbcType=VARCHAR}) </insert> 此时Dao接口的public Integer ins

Mybatis批量插入返回自增主键(转)

我们都知道Mybatis在插入单条数据的时候有两种方式返回自增主键: 1.对于支持生成自增主键的数据库:useGenerateKeys和keyProperty. 2.不支持生成自增主键的数据库:<selectKey>. 但是怎对批量插入数据返回自增主键的解决方式网上看到的还是比较少,至少百度的结果比较少. Mybatis官网资料提供如下: First, if your database supports auto-generated key fields (e.g. MySQL and SQL

mysql日期函数及批量循环返回主键ID

实际项目中总是会遇到各种时间计算查询等等许多时候是特别麻烦前阵子公司有个需求大致是要查询当前日期与数据库存储日期之差,本来写了个工具类调用的但是最后觉得这样不好就想着能不能用函数解决,没想到还真有这里分享下,sql如下: select datediff('2017-04-21',(select now())) as days;日期相减得到天数,简单吧,获取当前日期其实也是有函数的,但是有的mysql版本不支持具体各位自己尝试,还有一个就是日期格式查询处理也很简单DATE_FORMAT(     

mybatis执行insert返回主键

第一种方式(推介): <!-- 所有数据库通用,插入成功返回最近一次插入的id它会将id直接赋值到对应的实体当中TStudent stu = new TStudent(); studentMapper.add(TStudent ); int pk = stu.getId(); // 这就是我们的主键id --> <insert id="add" parameterType="TStudent" useGeneratedKeys="true

Mybatis获取插入记录主键

<insert id="createUser" parameterType="cn.User" useGeneratedKeys="true" keyProperty="userId"> INSERT INTO user(name,create_time,remark,create_user_id) VALUE(#{name,jdbcType=VARCHAR},NOW(),'new user',#{createUs

mybatis插入返回主键

 useGeneratedKeys="true" keyProperty="id" <insert id="insertReturnPrimaryKey" parameterType="com.haitao55.spider.order.robot.platform.dos.TaskHistoryDO" useGeneratedKeys="true" keyProperty="id"

mybatis insert 如何返回主键

在使用ibatis插入数据进数据库的时候,会用到一些sequence的数据,有些情况下,在插入完成之后还需要将sequence的值返回,然后才能进行下一步的操作.       使用ibatis的selectKey就可以得到sequence的值,同时也会将值返回.不过对于不同的数据库有不同的操作方式.       对于oracle:       <insert id="insertUser" parameterClass="ibatis.User">