mapper代理

2018-11-28  本文已影响0人  李洋codingfarmer

配置usermapper.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.neuedu.day02.mapper.UserMapper">
<select id="findUserById" parameterType="int" resultType="user">
select * from t_user where user_id = #{user_id}
</select>
</mapper>

接口(四种配对原则)

public interface UserMapper {
    //第一种mapper代理,保留xml
    public User findUserById(int id);
  //第二种mapper代理,添加注释
    @Select("select * from t_user where user_id = #{user_id}")
    public User selectUserById(int id);
    @Insert("insert into t_user(user_id,user_name,user_pwd,user_email,user_idcard,user_power) values (null,#{user_name},#{user_pwd},#{user_email},#{user_idCard},#{user_power})")
    public int insertUser(User user);
    @Update("update t_user set user_name=#{user_name},user_pwd=#{user_pwd},user_email=#{user_email},user_idcard=#{user_idCard} where user_id=#{user_id}")
    public int updateUser(User user);
    @Delete("delete  from t_user where user_id=#{user_id}")
    public int deleteUser(int id);}

sqlmapconfig.xml (mapper 终极 整包扫描)

   <mappers>
   <!-- 整包扫描 -->
   <package name="com.neuedu.day02.mapper"/>
   </mappers>

DaoImpl dao层实现类

    @Override
public User findUserById(int id) throws IOException {
     //第一步读取SqlMapConfig
      //指定文件位置
      //String resource="config/SqlMapConfig.xml";
      //读取资源文件
      //InputStream input=Resources.getResourceAsStream(resource);
      //获取SqlSessionFactory
      //SqlSessionFactory factory= new SqlSessionFactoryBuilder().build(input);
      //获取SqlSession
      SqlSession session=factory.openSession();
      //执行查询
      UserMapper userMapper=session.getMapper(UserMapper.class);
      User u=userMapper.findUserById(id);
      //关闭连接
      session.close();
      return u;
}


@Override
public int delUser(int id) throws IOException {
      //第一步读取SqlMapConfig
      //指定文件位置
      //String resource="config/SqlMapConfig.xml";
      //读取资源文件
      //InputStream input=Resources.getResourceAsStream(resource);
      //获取SqlSessionFactory
      //SqlSessionFactory factory= new SqlSessionFactoryBuilder().build(input);
      //获取SqlSession
      SqlSession session=factory.openSession();
      //执行查询
      int count=session.delete("user.delUser",6);
      System.out.println(count);
      //关闭连接
      session.close();
      return count;
}

@Override
public User selectUserById(int id) {
      SqlSession session=factory.openSession();
      //执行查询
      UserMapper userMapper=session.getMapper(UserMapper.class);
      User u=userMapper.selectUserById(id);
      //关闭连接
      session.close();
      return u;
    
}

@Override
public int insertUser(User user) {
      SqlSession session=factory.openSession();
      //执行查询
      UserMapper userMapper=session.getMapper(UserMapper.class);
      int count=userMapper.insertUser(user);
      //关闭连接
      session.close();
      return count;
}

@Override
public int updateUser(User user) {
    SqlSession session=factory.openSession();
      //执行查询
      UserMapper userMapper=session.getMapper(UserMapper.class);
      int count=userMapper.updateUser(user);
      //关闭连接
      session.close();
      return count;
}

@Override
public int deleteUserById(int id) {
    SqlSession session=factory.openSession();
      //执行查询
      UserMapper userMapper=session.getMapper(UserMapper.class);
      int count=userMapper.deleteUser(id);
      //关闭连接
      session.close();;
      return count;
}

测试类

   @Test
 public void testFind() throws IOException{
   IUserDao userDao=new UserDaoImpl(factory);
   User u=userDao.findUserById(1);
   System.out.println(u.getUser_name());
}
 @Test
 public void testSelect() throws IOException{
   IUserDao userDao=new UserDaoImpl(factory);
   User u=userDao.selectUserById(1);
   System.out.println(u.getUser_name());
}
 @Test
 public void testInsert() throws IOException{
   IUserDao userDao=new UserDaoImpl(factory);
   User user=new User();
   user.setUser_name("chenhao");
   user.setUser_pwd("654321");
   user.setUser_power(0);
   user.setUser_email("chenhao.newedu.com");
   user.setUser_idCard("210101200006061234");
   int count=userDao.insertUser(user);
   System.out.println(count);
}
 @Test
public void testUpdate() throws IOException{
   IUserDao userDao=new UserDaoImpl(factory);
   User user=new User();
   user.setUser_id(8);
   user.setUser_name("chenhao");
   user.setUser_pwd("123456");
   user.setUser_email("chenhao.newedu.com");
   user.setUser_idCard("210101200006061234");
   int count=userDao.updateUser(user);
   System.out.println(count);
}
@Test
public void testDelete() throws IOException{
   IUserDao userDao=new UserDaoImpl(factory);
   int count=userDao.deleteUserById(9);
   System.out.println(count);
}
上一篇 下一篇

猜你喜欢

热点阅读