当前位置:  首页>> 技术小册>> Mybatis合辑5-注解、扩展、SQL构建

  • User.java
  1. package com.sunxiaping.domain;
  2. import java.io.Serializable;
  3. import java.util.Date;
  4. public class User implements Serializable {
  5. private Integer id;
  6. private String username;
  7. private Date birthday;
  8. private String gender;
  9. private String address;
  10. public Integer getId() {
  11. return id;
  12. }
  13. public void setId(Integer id) {
  14. this.id = id;
  15. }
  16. public String getUsername() {
  17. return username;
  18. }
  19. public void setUsername(String username) {
  20. this.username = username;
  21. }
  22. public Date getBirthday() {
  23. return birthday;
  24. }
  25. public void setBirthday(Date birthday) {
  26. this.birthday = birthday;
  27. }
  28. public String getGender() {
  29. return gender;
  30. }
  31. public void setGender(String gender) {
  32. this.gender = gender;
  33. }
  34. public String getAddress() {
  35. return address;
  36. }
  37. public void setAddress(String address) {
  38. this.address = address;
  39. }
  40. @Override
  41. public String toString() {
  42. return "User{" +
  43. "id=" + id +
  44. ", username='" + username + '\'' +
  45. ", birthday=" + birthday +
  46. ", gender='" + gender + '\'' +
  47. ", address='" + address + '\'' +
  48. '}';
  49. }
  50. }
  • UserMapper.java
  1. package com.sunxiaping.mapper;
  2. import com.sunxiaping.domain.User;
  3. import org.apache.ibatis.annotations.*;
  4. import java.util.List;
  5. public interface UserMapper {
  6. /**
  7. * 查询所有用户信息
  8. *
  9. * @return
  10. */
  11. @Select(" SELECT * FROM `user`")
  12. @Results({
  13. @Result(id = true, property = "id", column = "id"),
  14. @Result(property = "username", column = "username"),
  15. @Result(property = "birthday", column = "birthday"),
  16. @Result(property = "gender", column = "gender"),
  17. @Result(property = "address", column = "address"),
  18. })
  19. List<User> findAll();
  20. /**
  21. * 添加用户信息
  22. *
  23. * @param user
  24. */
  25. @Insert(" INSERT INTO `user` (username,birthday,gender,address) VALUES (#{username},#{birthday},#{gender},#{address})")
  26. void saveUser(User user);
  27. /**
  28. * 修改用户信息
  29. *
  30. * @param user
  31. */
  32. @Update(" UPDATE `user` set username = #{username},gender= #{gender} ,address = #{address} WHERE id = #{id} ")
  33. void updateUser(User user);
  34. /**
  35. * 删除用户信息
  36. *
  37. * @param id
  38. */
  39. @Delete(" DELETE FROM `user` WHERE id = #{id} ")
  40. void deleteById(Integer id);
  41. }
  • 测试:
  1. package com.sunxiaping;
  2. import com.sunxiaping.domain.User;
  3. import com.sunxiaping.mapper.UserMapper;
  4. import org.apache.ibatis.io.Resources;
  5. import org.apache.ibatis.session.SqlSession;
  6. import org.apache.ibatis.session.SqlSessionFactory;
  7. import org.apache.ibatis.session.SqlSessionFactoryBuilder;
  8. import org.junit.After;
  9. import org.junit.Before;
  10. import org.junit.Test;
  11. import java.io.IOException;
  12. import java.io.InputStream;
  13. import java.util.Date;
  14. import java.util.List;
  15. public class UserTest {
  16. SqlSessionFactory sqlSessionFactory = null;
  17. SqlSession sqlSession = null;
  18. @Before
  19. public void before() throws IOException {
  20. String resource = "mybatis-config.xml";
  21. InputStream inputStream = Resources.getResourceAsStream(resource);
  22. sqlSessionFactory = new SqlSessionFactoryBuilder().build(inputStream);
  23. }
  24. @After
  25. public void after() {
  26. if (sqlSession != null) {
  27. sqlSession.close();
  28. }
  29. }
  30. @Test
  31. public void testFindAll() throws IOException {
  32. sqlSession = sqlSessionFactory.openSession(true);
  33. UserMapper userMapper = sqlSession.getMapper(UserMapper.class);
  34. List<User> userList = userMapper.findAll();
  35. System.out.println("userList = " + userList);
  36. }
  37. @Test
  38. public void testSaveUser() {
  39. sqlSession = sqlSessionFactory.openSession(true);
  40. User user = new User();
  41. user.setUsername("zhangsan");
  42. user.setBirthday(new Date());
  43. user.setGender("男");
  44. user.setAddress("江苏苏州");
  45. UserMapper userMapper = sqlSession.getMapper(UserMapper.class);
  46. userMapper.saveUser(user);
  47. }
  48. @Test
  49. public void testUpdateUser() {
  50. sqlSession = sqlSessionFactory.openSession(true);
  51. User user = new User();
  52. user.setId(1);
  53. user.setUsername("张三");
  54. user.setGender("女");
  55. user.setAddress("江苏苏州");
  56. user.setBirthday(new Date());
  57. UserMapper userMapper = sqlSession.getMapper(UserMapper.class);
  58. userMapper.updateUser(user);
  59. }
  60. @Test
  61. public void testDeleteById() {
  62. sqlSession = sqlSessionFactory.openSession(true);
  63. UserMapper userMapper = sqlSession.getMapper(UserMapper.class);
  64. userMapper.deleteById(1);
  65. }
  66. }

该分类下的相关小册推荐: