目录
前提
1.创建了实体类
2.有MybatisUtils工具类
3.与数据库连接
编写顺序
1.Mapper接口-->编写(定义)方法名
2.Mapper.xml文件-->编写SQL语句
3.测试类-->调用测试
Mapper接口
public interface UserMapper {
//查询所有用户信息
List<User> getUserList();
//通过id查询对应用户的信息
User getUserById(int id);
//添加一个用户
int addUser(User user);
//修改用户信息
int updateUser(User user);
//删除用户
int deleteById(int id);
}
Mapper.xml
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.star.mapper.UserMapper">
<!-- 查询所有用户信息-->
<select id="getUserList" resultType="com.star.pojo.User">
select * from mybatis.user;
</select>
<!-- 通过id查询用户信息-->
<select id="getUserById" resultType="com.star.pojo.User" parameterType="com.star.pojo.User">
select * from mybatis.user where id=#{id};
</select>
<!-- 添加用户-->
<insert id="addUser" parameterType="com.star.pojo.User" >
insert into mybatis.user(id,name,pwd) values(#{id},#{name},#{pwd});
</insert>
<!-- 修改用户信息-->
<update id="updateUser" parameterType="com.star.pojo.User">
update mybatis.user set name=#{name} , pwd=#{pwd} where id=#{id};
</update>
<!-- 通过id删除用户-->
<delete id="deleteById" parameterType="int">
delete from mybatis.user where id=#{id};
</delete>
</mapper>
测试类
public class UserMapperTest {
@Test
public void test(){
//1.获取SqlSession对象
SqlSession sqlSession = MybatisUtils.getSqlSession();
//调用
UserMapper userMapper =sqlSession.getMapper(UserMapper.class);
List<User> userList =userMapper.getUserList();
for (User user : userList) {
System.out.println(user);
}
//关闭
sqlSession.close();
}
//通过id查询
@Test
public void getUserById(){
SqlSession sqlSession = MybatisUtils.getSqlSession();
UserMapper userMapper = sqlSession.getMapper(UserMapper.class);
User user = userMapper.getUserById(13);
System.out.println(user);
sqlSession.close();
}
//添加
@Test
public void addUser(){
SqlSession sqlSession = MybatisUtils.getSqlSession();
UserMapper userMapper = sqlSession.getMapper(UserMapper.class);
int num = userMapper.addUser(new User(1, "元大鹰", "111"));
System.out.println(num);
//提交事务
sqlSession.commit();
sqlSession.close();
}
//修改
@Test
public void updateUser(){
SqlSession sqlSession = MybatisUtils.getSqlSession();
UserMapper userMapper = sqlSession.getMapper(UserMapper.class);
int num = userMapper.updateUser(new User(1, "东方不败", "000"));
System.out.println(num);
sqlSession.commit();
sqlSession.close();
}
//通过id删除用户
@Test
public void deleteById(){
SqlSession sqlSession = MybatisUtils.getSqlSession();
UserMapper userMapper = sqlSession.getMapper(UserMapper.class);
int num = userMapper.deleteById(1);
System.out.println(num);
sqlSession.commit();
sqlSession.close();
}
}
注:增删改操作需要提交事务(即 sqlSession.commit)