/**
* 查询所有用户
* @return
*/
@Select("select * from user")
List<User>findAll();/**
* 保存用户
* @param user
*/
@Insert("insert into user(username,address,sex,birthday)values(#{username},#{address},#{sex},#{birthday})")voidsaveUser(User user);/**
* 更新用户
* @param user
*/
@Update("update user set username=#{username},sex=#{sex},birthday=#{birthday},address=#{address} where id=#{id}")voidupdateUser(User user);/**
* 删除用户
* @param userId
*/
@Delete("delete from user where id=#{id} ")voiddeleteUser(Integer userId);/**
* 根据id查询用户
* @param userId
* @return
*/
@Select("select * from user where id=#{id} ")
User findById(Integer userId);/**
* 根据用户名称模糊查询
* @param username
* @return
*/// @Select("select * from user where username like '%${value}%' ")
@Select("select * from user where username like #{username} ")
List<User>findUserByName(String username);/**
* 查询总用户数量
* @return
*/
@Select("select count(*) from user ")
int findTotalUser();
2.2编写测试类
publicclassAnnotationCRUDTest{private InputStream in;private SqlSessionFactory factory;private SqlSession session;private IUserDao userDao;
@Before
publicvoidinit()throws Exception{in= Resources.getResourceAsStream("SqlMapConfig.xml");
factory =newSqlSessionFactoryBuilder().build(in);
session = factory.openSession();
userDao = session.getMapper(IUserDao.class);}
@After
publicvoiddestroy()throws Exception{
session.commit();
session.close();in.close();}
@Test
publicvoidtestSave(){
User user =newUser();
user.setUsername("mybatis annotation");
user.setAddress("北京市昌平区");
userDao.saveUser(user);}
@Test
publicvoidtestUpdate(){
User user =newUser();
user.setId(57);
user.setUsername("mybatis annotation update");
user.setAddress("北京市海淀区");
user.setSex("男");
user.setBirthday(newDate());
userDao.updateUser(user);}
@Test
publicvoidtestDelete(){
userDao.deleteUser(51);}
@Test
publicvoidtestFindOne(){
User user = userDao.findById(57);
System.out.println(user);}
@Test
publicvoidtestFindByName(){// List<User> users = userDao.findUserByName("mybatis");
List<User> users = userDao.findUserByName("%mybatis%");for(User user : users){
System.out.println(user);}}
@Test
publicvoidtestFindTotal(){
int total = userDao.findTotalUser();
System.out.println(total);}}