MybatisPlus--基础用法

基础增删改查
Dao层:

public interface UserDao extends BaseMapper<User> {

	/**
	 * 测试自己手写的SQL及接口
	 * @param id
	 * @return
	 */
	public User selectByPrimaryId(Integer id);
}

对应的Mapper:

<mapper namespace="com.test.mybatisplus.dao.UserDao">

	<!-- 通用查询映射结果 -->
	<resultMap id="BaseResultMap" type="com.test.mybatisplus.pojo.User">
		<id column="id" property="id" />
		<result column="name" property="name" />
		<result column="password" property="password" />
	</resultMap>

	<!-- 通用查询结果列 -->
	<sql id="Base_Column_List">
		id, name, password
	</sql>

	<!-- 测试手写的SQL -->
	<select id="selectByPrimaryId" parameterType="java.lang.Integer"
		resultType="com.test.mybatisplus.pojo.User">
		SELECT
		<include refid="Base_Column_List" />
		FROM user
		WHERE id=#{id}
	</select>
</mapper>

Pojo类:

public class User extends Model<User> {

    private static final long serialVersionUID = 1L;

    @TableId(value = "id", type = IdType.AUTO)
    private Integer id;
    private String name;
    private String password;
	//省略get/set

测试代码:

public static void testCrud() {
		// 自己手写的方式
		//System.out.println(userDao.selectByPrimaryId(1));

		// 自动生成的代码
		// 增
		/*User user01 = new User();
		user01.setName("测试添加");
		userDao.insert(user01);*/
		
		//删
		/*Integer influenceRows = userDao.deleteById(2);
		System.out.println("影响行数:"+influenceRows);*/
		
		//修改
		User user02=new User();
		user02.setId(3);
		user02.setName("update测试");
		System.out.println("update影响行数"+userDao.updateById(user02));
		
		// 查
		User user03 = userDao.selectById(3);
		System.out.println(user03);
		
		//分页查询
		Wrapper<User> entity = new EntityWrapper<User>();
		entity.like("name", "%测试%");
		entity.between("id", 1, 3);
		List<User> lstUser = userDao.selectPage(new Page<User>(1,10),entity);
		for(User user:lstUser) {
			System.out.println(user);
		}
	}

3 分页
确保配置文件中整合了分页插件
这里写图片描述
在xml中只需要需要写如下的代码即可实现分页:

<select id="selectUserList" parameterType="map" resultType="com.test.mybatisplus.pojo.User">
		SELECT
		<include refid="Base_Column_List" />
		FROM user
		WHERE name LIKE CONCAT("%",#{name},"%")
	</select>

测试:

/**
	 * 分页插件
	 */
	public static void testPageListUser() {
		Page<User> page = new Page<User>(1,10);
		
		Map<String, Object> condition=new HashMap<String, Object>();
		condition.put("name", "测试");
		//String name="测试";
		List<User> lstUser = userDao.selectUserList(page,condition);
		for(User user:lstUser) {
			System.out.println(user);
		}
	}
        Page<InspectReviewPlanDO> page=new Page<>();
        QueryWrapper<InspectReviewPlanDO> queryWrapper=new QueryWrapper<>();
        queryWrapper.select("id");
        queryWrapper.eq("assign_type",0 );
        //排序
        List<OrderItem> orderItems=new ArrayList<>();
        orderItems.add(new OrderItem().setColumn("id").setAsc(false));
        page.setOrders(orderItems);

        IPage<InspectReviewPlanDO> planDOIPage = inspectReviewPlanMapper.selectPage(page, queryWrapper);
        System.out.println(JSON.toJSONString(planDOIPage));

打印的sql
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
MyBatis-Plus 是 MyBatis 的增强工具,在 MyBatis基础上,提供了许多实用的功能,简化了 MyBatis使用,让开发更加高效。 MyBatis-Plus-Plus 是对 MyBatis-Plus 的再次封装,提供了更加简洁易用的 API,让开发者更加便捷地使用 MyBatis-Plus。 下面是 MyBatis-Plus-Plus 的使用示例: 1. 引入 MyBatis-Plus 和 MyBatis-Plus-Plus 的依赖: ```xml <dependency> <groupId>com.baomidou</groupId> <artifactId>mybatis-plus</artifactId> <version>3.4.3</version> </dependency> <dependency> <groupId>com.github.beyondlov1</groupId> <artifactId>mybatisplus-plus</artifactId> <version>1.0.0</version> </dependency> ``` 2. 创建实体类: ```java @Data @TableName("user") public class User { @TableId(type = IdType.AUTO) private Long id; // 主键id private String name; // 名称 private Integer age; // 年龄 private String email; // 邮箱 } ``` 3. 创建 Mapper 接口: ```java public interface UserMapperPlus extends MybatisPlusMapper<User> { } ``` 4. 使用 MyBatis-Plus-Plus 的 API: ```java @Autowired private UserMapperPlus userMapper; // 插入数据 User user = new User(); user.setName("test"); user.setAge(18); user.setEmail("test@test.com"); userMapper.insert(user); // 更新数据 user.setName("test1"); userMapper.updateById(user); // 根据 id 查询数据 User user1 = userMapper.selectById(user.getId()); // 查询所有数据 List<User> userList = userMapper.selectList(null); // 分页查询数据 Page<User> page = new Page<>(1, 10); QueryWrapper<User> queryWrapper = new QueryWrapper<>(); queryWrapper.lambda().eq(User::getName, "test"); userMapper.selectPage(page, queryWrapper); ``` 以上就是 MyBatis-Plus-Plus 的简单使用示例,更多使用方法可以参考官方文档。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值