zoukankan      html  css  js  c++  java
  • 对象之间的转换(mapstruct)

    对象之间的转换

    1、在maven中引入jar包

         <!--对象转换-->
            <dependency>
                <groupId>org.mapstruct</groupId>
                <artifactId>mapstruct</artifactId>
                <version>1.1.0.Final</version>
            </dependency>
    
            <dependency>
                <groupId>org.mapstruct</groupId>
                <artifactId>mapstruct-processor</artifactId>
                <version>1.1.0.Final</version>
                <scope>provided</scope>
            </dependency>    

    2、创建一个接口专门实现对象进行转换

    @Mapper
    public interface IContractBean {
        IContractBean INSTANCE = Mappers.getMapper(IContractBean.class);
    
        Contract contract(SaveContractDTO saveContactDTO);
    
        ContractGood contractGood(GoodDTO goodDTO);
    
        List<ContractGood> contractGood(List<GoodDTO> goodDTOList);
    
      @Mappings({
                @Mapping(source = "terminationTime", target = "endTime"),
        })
        ContractAssistVO relationVO(ContractRelationAssist relationAssist);
        Page<ContractAssistVO> relationVO(Page<ContractRelationAssist> relationAssistPage);  
    }
    

      如果是List对象互相转换,那么需要先设置List里面的对象先进行转换

    ContractGood contractGood(GoodDTO goodDTO);
    
    List<ContractGood> contractGood(List<GoodDTO> goodDTOList);
    

      如果对象里面的属性不一致,需要进行转换,则使用@Mappings注解

    //将 terminationTime 转成 endTime对象
    @Mappings({
                @Mapping(source = "terminationTime", target = "endTime"),
        })
        ContractAssistVO relationVO(ContractRelationAssist relationAssist);
        Page<ContractAssistVO> relationVO(Page<ContractRelationAssist> relationAssistPage);
    

      

    3、实现类进行使用

     GoodVO goodVO = IContractBean.INSTANCE.contractGoodVO(contractGood);
            List<GoodVO> goodVOList = IContractBean.INSTANCE.contractGoodVO(goodList);
    

      

  • 相关阅读:
    常用经典SQL语句
    怎样找到PB打包所需要的dll和pbd文件?
    C#多线程参数传递
    Sqlserver 常用日期时间函数
    SQL Server:如何判断变量或字段是否为NULL
    用c#开发可供PB调用的COM组件
    ROW_NUMBER() OVER函数的基本用法用法
    SQL Server数据导入导出工具BCP详解
    IE下 Window.Open(url,name), name参数空格、符号问题
    数据库设计系列[05]多公司加入权限系统
  • 原文地址:https://www.cnblogs.com/tanyucong/p/10302428.html
Copyright © 2011-2022 走看看