mybatisplus 结果_MyBatis Plus 将查询结果封装到指定实体

本文介绍了如何使用MyBatis Plus将查询结果自动映射到指定的实体类,包括自定义方法、使用Wrapper以及示例代码演示。
摘要由CSDN通过智能技术生成

MyBatis Plus 将查询结果封装到指定实体

思路

自定义方法,使用Wrapper,自定义映射结果集

Mapper接口

package com.mozq.boot.mpsand01.dao;

import com.baomidou.mybatisplus.core.conditions.Wrapper;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;

import com.baomidou.mybatisplus.core.toolkit.Constants;

import com.mozq.boot.mpsand01.pojo.OrderInfo;

import com.mozq.boot.mpsand01.vo.OrderVO;

import org.apache.ibatis.annotations.*;

import java.util.List;

@Mapper

public interface OrderInfoDao extends BaseMapper {

@Select("select * from order_info ${ew.customSqlSegment}")

/* 只指定2个,其他列能自动匹配的,也会被映射。

@Results({

@Result(id = true, column = "ORDER_ID", property = "orderId", jdbcType = JdbcType.VARCHAR),

@Result(column = "USER_ID", property = "userId", jdbcType = JdbcType.INTEGER)

})

*/

List findByCondition(@Param(Constants.WRAPPER)Wrapper wrapper);

List selectOrderVOList(@Param(Constants.WRAPPER)Wrapper wrapper);

}

Mapper.xml

/p>

"http://mybatis.org/dtd/mybatis-3-mapper.dtd">

ORDER_ID,

USER_ID,

COMPANY_ID,

CUSTOMER_ID,

CUSTOMER_NAME,

MOBILE_PHONE,

ACCOUNT_ID,

PRODUCT_ID,

PRODUCT_NAME,

ORDER_TYPE,

QUANTITY,

LICENSE_PLATE_NUMBER,

PRICE,

TOTAL_MONEY,

PAY_QUANTITY,

PAY_MONEY,

THE_WEIGHT,

DELIVERY_ADDRESS,

RECEIVE_ADDRESS,

ORDER_STATUS,

REMARK,

PICKUP_TIME,

CREATE_TIME,

UPDATE_TIME

select

from order_info

${ew.customSqlSegment}

测试类

@Test

public void selectOrderVOList(){

List orderVOList = orderInfoDao.selectOrderVOList(

Wrappers.lambdaQuery()

.eq(OrderInfo::getUserId, 123456)

.eq(OrderInfo::getCompanyId, 1)

);

System.out.println(orderVOList.size());

List byCondition = orderInfoDao.findByCondition(

Wrappers.lambdaQuery()

.eq(OrderInfo::getUserId, 123456)

.eq(OrderInfo::getCompanyId, 1)

);

System.out.println(byCondition.size());

List orderInfoList = orderInfoDao.selectList(

Wrappers.lambdaQuery()

.eq(OrderInfo::getUserId, 123456)

.eq(OrderInfo::getCompanyId, 1)

);

System.out.println(orderInfoList.size());

}

用mybatis将SQL查询语句”select * from user”的封装为配置文件

用mybatis将SQL查询语句”select * from user”的封装为配置文件 定义一个xml映射文件,文件名见名知意.如user-mapper.xml,文件内容如下: <?xml v ...

Mybatis之关联查询

一.一对一关联 1.1.提出需求 根据班级id查询班级信息(带老师的信息) 1.2.创建表和数据 创建一张教师表和班级表,这里我们假设一个老师只负责教一个班,那么老师和班级之间的关系就是一种一对一的关 ...

mybatis 联表查询

一.一对一关联 1.1.提出需求 根据班级id查询班级信息(带老师的信息) 1.2.创建表和数据 创建一张教师表和班级表,这里我们假设一个老师只负责教一个班,那么老师和班级之间的关系就是一种一对一的关 ...

Mybatis按SQL查询字段的顺序返回查询结果

在SpringMVC+Mybatis的开发过程中,可以通过指定resultType="hashmap"来获得查询结果,但其输出是没有顺序的.如果要按照SQL查询字段的顺序返回查询结 ...

【转载】Mybatis多参数查询映射

转载地址:http://www.07net01.com/zhishi/402787.html 最近在做一个Mybatis的项目,由于是接触不久,虽然看了一下资料,但在实际开发中还是暴 露了很多问题,其 ...

Mybatis包分页查询java公共类

Mybatis包分页查询java公共类   分页----对于数据量非常大的查询中.是不可缺少的. mybatis底层的分页sql语句因为须要我们自己去手动写.而实现分页显示的时候我们须要依据分页查询条 ...

mybatis一对一嵌套查询

要求:查询一个员工的时候,把他对应的部门也查询出来 实现(其他配置这里不作说明,框架基于spring_springMVC_mybatis_oracle): 如有不对或不适的地方,请多多指教. 1.新建 ...

MyBatis多对多查询

-------------------siwuxie095                                 MyBatis 多对多查询         以订单和商品为例,即 一个订单可 ...

MyBatis之自查询,使用 递归实现 N级联动

A:首先先看下一个简单的面试题 斐波那契数列 计算数组{1,1,2,3,5,8.......} 第30位值 规律:1 1 从第三项开始,每一项都是前两项之和 有两种实现方式 第一种方式: public ...

随机推荐

机器学习笔记-----AP(affinity propagat)算法讲解及matlab实现

大家好,我是人见人爱,花见花开的小花.哈哈~~! 在统计和数据挖掘中,亲和传播(AP)是基于数据点之间"消息传递"概念的聚类算法.与诸如k-means或k-medoids的聚类算法 ...

git安装及命令使用和github网站

最近参与别人的github项目时,学习了git的使用,首先需要在https://github.com/网站上注册账号和邮箱,然后fork一个开源项目,然后下载目前Windows下最新版本的git,下载 ...

SharePoint 向多行文本类型字段插入特殊类型链接

1.在测试列表中插入一个多行文本字段,名字叫做Content,如下图: 2.在Content字段里,添加一个Link,如下图: 3.尝试输入Notes格式的Link,如下图: 4.点击OK的时候,弹出 ...

Activiti 学习笔记记录

官方在线用户手册(英文版):http://activiti.org/userguide/index.html 中文用户手册:http://www.mossle.com/docs/activiti/in ...

JDK7的Comparison method violates its general contract异常

1.摘要 前一阵遇到了一个使用Collections.sort()时报异常的问题,跟小伙伴@zhuidawugui 一起排查了一下,发现问题的原因是JDK7的排序实现改为了TimSort,之后我们又进 ...

pg 匹配中文字符

用到了正则表达式: 字段 ~'[\u4E00-\u9FA5]+$'; 注意:此表达式可能还不能取到最全的值.

Extjs4---Cannot read property &&num;39&semi;addCls&&num;39&semi; of null

用MVC做后台管理系统时遇到的问题,关于tab关闭后再打开不显示,或者报错 我在新的tabpanel中加入了一个grid,当我关闭再次打开就会报错Cannot read property 'addCl ...

在含有null值的复杂类的集合&lpar;Collection&rpar;中取最大值

在日常编程中,经常遇到要在一组复杂类的集合(Collection)中做比较.取最大值或最小值. 举个最简单的例子,我们要在一个如下结构的集合中选取包含最大值的元素: public class Clas ...

Java---设计模块&lpar;值对象&rpar;

★ 场景和问题 在Java开发时,需要来回交换大量的数据,比如要为方法传入参数,也要获取方法的返回值,该如何能更好的进行数据的交互? ★ 基本的编写步骤 ◎第1步:写一个类,实现可序列化(如果以后数据 ...

常用Jquery插件整理大全

做项目的时候总是少不了要用到Jquery插件,但是Jquery插件有太多,每次都要花费一些时间,因此本人就抽时间整理了一些Jquery插件,每个插件都有Demo或者是使用文档供大家下载.整理了一晚上才 ...

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值