zoukankan      html  css  js  c++  java
  • mapstruct 集合转换指定方法

    接口

        /**
         * @IterableMapping(qualifiedByName = "test") : 指定调用@Named("test")标记的方法作为集合内元素转换方法
         */
        @Named("test2")
        @IterableMapping(qualifiedByName = "test")
        List<ClusterInfoDTO> test2(List<ClusterInfo> clusterInfoSet);
    
        /**
         * 该方法只想复制id属性
         * @BeanMapping(ignoreByDefault = true) : 不自动映射字段,所有需要映射的字段均需要通过@Mapping来指定
         */
        @Named("test")
        @BeanMapping(ignoreByDefault = true)
        @Mapping(target = "id", source = "id")
        ClusterInfoDTO test1(ClusterInfo clusterInfoSet);
    

    自动生成的实现

        @Override
        public List<ClusterInfoDTO> test2(List<ClusterInfo> clusterInfoSet) {
            if ( clusterInfoSet == null ) {
                return null;
            }
    
            List<ClusterInfoDTO> list = new ArrayList<ClusterInfoDTO>( clusterInfoSet.size() );
            for ( ClusterInfo clusterInfo : clusterInfoSet ) {
                list.add( test1( clusterInfo ) );
            }
    
            return list;
        }
    
        @Override
        public ClusterInfoDTO test1(ClusterInfo clusterInfoSet) {
            if ( clusterInfoSet == null ) {
                return null;
            }
    
            ClusterInfoDTO clusterInfoDTO = new ClusterInfoDTO();
    
            clusterInfoDTO.setId( clusterInfoSet.getId() );
    
            return clusterInfoDTO;
        }
    
  • 相关阅读:
    C++(四)--线程与进程
    http1.0升级到http1.1
    odoo 基础
    Ubuntu 上安装配置 Ldap
    odoo 怎样使代码生效
    Odoo 创建自定义模块
    开源的软件应用
    域控
    Flask 数据库 SQLAlchemy
    CentOS 8 防火墙 firewall 相关命令
  • 原文地址:https://www.cnblogs.com/xiaojiluben/p/15514941.html
Copyright © 2011-2022 走看看