Mybatis Plus

  1. public interface UserMapper extends BaseMapper<User> {}
    
    public class MapperTest {
     
        @Autowired
        private UserMapper userMapper;
     
        @Test
        public void getAll() {
            List<User> users = userMapper.selectList(null);
            users.forEach(System.out::println);
        }
    }
    

    只是用到了usermapper中的selectList()方法,而UserMapper继承了BaseMapper这个接口,这个接口便是MybatisPlus提供给我们的

  2. 条件构造器wrapper

        @Test
        public void test01(){
            QueryWrapper<User> wrapper = new QueryWrapper<>();
            //查询名字和邮箱都不为空、且年龄大于18岁的用户
            wrapper.isNotNull("name")
                    .isNotNull("email")
                    .ge("age",18);
    
            userMapper.selectList(wrapper).forEach(System.out::println);
        }
    
  3. xml映射文件

    <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" 
      "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
    <mapper namespace="com.xxx.mapper.UserMapper">
        <select id="selectAdultUsers" resultType="com.xxx.entity.User">
            SELECT * FROM users 
            <where>
                <if test="status != null">
                    status = #{status}
                </if>
                age >= 18
            </where>
        </select>
        
        <resultMap id="userDetailMap" type="com.xxx.entity.User">
            <id property="id" column="user_id"/>
            <result property="createTime" column="create_time"/>
        </resultMap>
        
        <select id="selectUserDetail" resultMap="userDetailMap">
            SELECT u.id AS user_id, u.create_time FROM users u
            LEFT JOIN dept d ON u.dept_id = d.id
        </select>
    </mapper>
    
    List<User> selectAdultUsers(@Param("status") String status);
    List<User> selectUserDetail();
    
posted @ 2025-09-28 16:03  疯啦吧你  阅读(6)  评论(0)    收藏  举报