MyBatis可以通过以下几种方式添加数据并返回对象:
insert语句添加数据并返回自动生成的主键值:// 定义一个mapper接口方法 void insertUser(User user); // 使用Mapper XML配置文件 <insert id="insertUser" parameterType="com.example.User"> INSERT INTO user (name, age) VALUES (#{name}, #{age}) </insert> // 调用mapper接口方法,并获得自动生成的主键值 userMapper.insertUser(user); System.out.println(user.getId()); selectKey标签在插入语句中获取自动生成的主键值:// 使用Mapper XML配置文件 <insert id="insertUser" parameterType="com.example.User"> <selectKey keyProperty="id" resultType="int" order="AFTER"> SELECT LAST_INSERT_ID() </selectKey> INSERT INTO user (name, age) VALUES (#{name}, #{age}) </insert> // 调用mapper接口方法,主键值会被设置到user实例中 userMapper.insertUser(user); System.out.println(user.getId()); useGeneratedKeys标签在插入语句中获取自动生成的主键值:// 使用Mapper XML配置文件 <insert id="insertUser" parameterType="com.example.User" useGeneratedKeys="true" keyProperty="id"> INSERT INTO user (name, age) VALUES (#{name}, #{age}) </insert> // 调用mapper接口方法,主键值会被设置到user实例中 userMapper.insertUser(user); System.out.println(user.getId()); 注意:以上方法都需要在MyBatis的配置文件中开启自动生成主键的功能。