激情久久久_欧美视频区_成人av免费_不卡视频一二三区_欧美精品在欧美一区二区少妇_欧美一区二区三区的

服務器之家:專注于服務器技術及軟件下載分享
分類導航

PHP教程|ASP.NET教程|JAVA教程|ASP教程|編程技術|正則表達式|

服務器之家 - 編程語言 - JAVA教程 - MyBatis Plus 將查詢結果封裝到指定實體的方法步驟

MyBatis Plus 將查詢結果封裝到指定實體的方法步驟

2020-09-26 00:42魔有追求 JAVA教程

這篇文章主要介紹了MyBatis Plus 將查詢結果封裝到指定實體的方法步驟,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧

思路

自定義方法,使用Wrapper,自定義映射結果集

Mapper接口

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
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<OrderInfo> {
  @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<OrderVO> findByCondition(@Param(Constants.WRAPPER)Wrapper wrapper);
 
  List<OrderVO> selectOrderVOList(@Param(Constants.WRAPPER)Wrapper wrapper);
}

Mapper.xml

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
    "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.mozq.boot.mpsand01.dao.OrderInfoDao">
 
  <resultMap id="BaseResultMapVO" type="com.mozq.boot.mpsand01.vo.OrderVO">
    <id column="ORDER_ID" property="orderId" jdbcType="VARCHAR" />
    <result column="USER_ID" property="userId" jdbcType="INTEGER" />
    <result column="COMPANY_ID" property="companyId" jdbcType="INTEGER" />
    <result column="CUSTOMER_ID" property="customerId" jdbcType="INTEGER" />
    <result column="CUSTOMER_NAME" property="customerName" jdbcType="VARCHAR" />
    <result column="MOBILE_PHONE" property="mobilePhone" jdbcType="VARCHAR" />
    <result column="ACCOUNT_ID" property="accountId" jdbcType="VARCHAR" />
    <result column="PRODUCT_ID" property="productId" jdbcType="INTEGER" />
    <result column="PRODUCT_NAME" property="productName" jdbcType="VARCHAR" />
    <result column="ORDER_TYPE" property="orderType" jdbcType="INTEGER" />
    <result column="QUANTITY" property="quantity" jdbcType="DECIMAL" />
    <result column="LICENSE_PLATE_NUMBER" property="licensePlateNumber" jdbcType="VARCHAR" />
    <result column="PRICE" property="price" jdbcType="DECIMAL" />
    <result column="TOTAL_MONEY" property="totalMoney" jdbcType="DECIMAL" />
    <result column="PAY_QUANTITY" property="payQuantity" jdbcType="DECIMAL" />
    <result column="PAY_MONEY" property="payMoney" jdbcType="DECIMAL" />
    <result column="THE_WEIGHT" property="theWeight" jdbcType="INTEGER" />
    <result column="DELIVERY_ADDRESS" property="deliveryAddress" jdbcType="VARCHAR" />
    <result column="RECEIVE_ADDRESS" property="receiveAddress" jdbcType="VARCHAR" />
    <result column="ORDER_STATUS" property="orderStatus" jdbcType="INTEGER" />
    <result column="REMARK" property="remark" jdbcType="VARCHAR" />
    <result column="PICKUP_TIME" property="pickupTime" jdbcType="TIMESTAMP" />
    <result column="CREATE_TIME" property="createTime" jdbcType="TIMESTAMP" />
    <result column="UPDATE_TIME" property="updateTime" jdbcType="TIMESTAMP" />
  </resultMap>
 
  <sql id="Base_Column_List">
    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
  </sql>
 
  <select id="selectOrderVOList" resultMap="BaseResultMapVO">
    select <include refid="Base_Column_List"></include>
    from order_info
    ${ew.customSqlSegment}
  </select>
 
</mapper>

測試類

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
@Test
public void selectOrderVOList(){
  List<OrderVO> orderVOList = orderInfoDao.selectOrderVOList(
    Wrappers.<OrderInfo>lambdaQuery()
    .eq(OrderInfo::getUserId, 123456)
    .eq(OrderInfo::getCompanyId, 1)
  );
  System.out.println(orderVOList.size());
  List<OrderVO> byCondition = orderInfoDao.findByCondition(
    Wrappers.<OrderInfo>lambdaQuery()
    .eq(OrderInfo::getUserId, 123456)
    .eq(OrderInfo::getCompanyId, 1)
  );
  System.out.println(byCondition.size());
  List<OrderInfo> orderInfoList = orderInfoDao.selectList(
    Wrappers.<OrderInfo>lambdaQuery()
    .eq(OrderInfo::getUserId, 123456)
    .eq(OrderInfo::getCompanyId, 1)
  );
  System.out.println(orderInfoList.size());
}

到此這篇關于MyBatis Plus 將查詢結果封裝到指定實體的方法步驟的文章就介紹到這了,更多相關MyBatis Plus查詢結果封裝到指定實體內容請搜索服務器之家以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持服務器之家!

原文鏈接:https://www.cnblogs.com/mozq/p/11755375.html

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 精品国产成人 | 国产99久久精品一区二区 | 亚洲精品一区二区三区在线看 | 国产三级精品最新在线 | 轻点插视频 | 日本成人二区 | 九九热视频免费 | 黄污网址| 国产色视频在线观看免费 | 在线91视频| 国产精品久久久久久影视 | 日本一区视频在线播放 | 国产精品久久亚洲 | 欧美极品欧美精品欧美视频 | china对白普通话xxxx | 亚洲免费片 | 欧美一级做性受免费大片免费 | 女人久久久www免费人成看片 | 久久精品中文字幕一区二区三区 | 日本黄色网战 | 宅男噜噜噜66国产在线观看 | 精品国产91久久久久久久 | 91婷婷射 | 国产毛片视频 | 国产精品成aⅴ人片在线观看 | 日韩精品一区二区在线观看 | 成人视屏网站 | 国产精品毛片无码 | 久久国产精品成人免费网站 | 国产精品99久久久久久久女警 | 久久免费综合视频 | 一级色毛片 | 欧美成人三级视频 | 看国产毛片 | 92看片淫黄大片一级 | 性欧美xxxx极品摘花 | 日韩av片在线播放 | 思思久而久而蕉人 | 国产刺激高潮av | 黄色影院在线 | 91 在线观看 |