MyBatis提供了幾種方法來保存或更新數(shù)據(jù):
使用insert語句保存數(shù)據(jù):
使用<insert>
標(biāo)簽定義插入語句,然后在Java代碼中調(diào)用對(duì)應(yīng)的Mapper方法來執(zhí)行插入操作。例如:
<insert id="insertUser" parameterType="User">
INSERT INTO user (name, age) VALUES (#{name}, #{age})
</insert>
sqlSession.insert("UserMapper.insertUser", user);
使用update語句更新數(shù)據(jù):
使用<update>
標(biāo)簽定義更新語句,然后在Java代碼中調(diào)用對(duì)應(yīng)的Mapper方法來執(zhí)行更新操作。例如:
<update id="updateUser" parameterType="User">
UPDATE user SET name = #{name}, age = #{age} WHERE id = #{id}
</update>
sqlSession.update("UserMapper.updateUser", user);
使用insert語句保存或更新數(shù)據(jù):
使用<insert>
標(biāo)簽定義插入或更新語句,并使用<selectKey>
標(biāo)簽來指定判斷插入或更新的條件。例如:
<insert id="saveOrUpdateUser" parameterType="User">
<selectKey keyProperty="id" resultType="Long" order="BEFORE">
SELECT id FROM user WHERE name = #{name}
</selectKey>
<if test="id == null">
INSERT INTO user (name, age) VALUES (#{name}, #{age})
</if>
<if test="id != null">
UPDATE user SET name = #{name}, age = #{age} WHERE id = #{id}
</if>
</insert>
sqlSession.insert("UserMapper.saveOrUpdateUser", user);
以上是MyBatis中保存或更新數(shù)據(jù)的幾種方法,根據(jù)實(shí)際需求選擇適合的方法即可。