Mybatis之增删改查
在MyBatis中进行增删改查操作,首先需要定义SQL映射文件,然后在接口中定义方法,最后通过MyBatis提供的SqlSession对象调用接口方法执行操作。
以下是一个简单的例子:
- 定义一个User实体类:
public class User {
private Integer id;
private String name;
private Integer age;
// 省略getter和setter方法
}
- 创建UserMapper.xml映射文件,定义SQL语句:
<mapper namespace="com.example.mapper.UserMapper">
<!-- 插入用户 -->
<insert id="insertUser" parameterType="User">
INSERT INTO users(name, age) VALUES (#{name}, #{age})
</insert>
<!-- 删除用户 -->
<delete id="deleteUser" parameterType="int">
DELETE FROM users WHERE id = #{id}
</delete>
<!-- 更新用户 -->
<update id="updateUser" parameterType="User">
UPDATE users SET name = #{name}, age = #{age} WHERE id = #{id}
</update>
<!-- 查询用户 -->
<select id="selectUser" parameterType="int" resultType="User">
SELECT id, name, age FROM users WHERE id = #{id}
</select>
</mapper>
- 创建UserMapper接口:
public interface UserMapper {
int insertUser(User user);
int deleteUser(int id);
int updateUser(User user);
User selectUser(int id);
}
- 使用SqlSession执行操作:
try (SqlSession session = sqlSessionFactory.openSession()) {
UserMapper mapper = session.getMapper(UserMapper.class);
// 插入
User newUser = new User();
newUser.setName("John Doe");
newUser.setAge(30);
mapper.insertUser(newUser);
// 提交事务
session.commit();
// 删除
mapper.deleteUser(newUser.getId());
// 更新
newUser.setAge(35);
mapper.updateUser(newUser);
// 查询
User user = mapper.selectUser(newUser.getId());
// 处理查询结果
}
确保在MyBatis配置文件中注册了UserMapper.xml,并且SqlSessionFactory已经正确配置。这样就可以通过SqlSession来执行映射的增删改查操作了。
评论已关闭