Java Spring集成MapStruct详情

 更新时间:2022年06月02日 17:21:16   作者:梁云亮  
这篇文章主要介绍了Java Spring集成MapStruct详情,文章围绕主题展开详细的内容介绍,具有一定的参考价值,需要的小伙伴可以参考一下

前言:

MapStruct支持Spring的依赖注入机制,只须要在@Mapper注解中添加componentModel配置项,并设置为“spring”便可。

待转换的类

@Getter
@Setter
@ToString
@Builder
@AllArgsConstructor
@NoArgsConstructor
public class Spu {
    private Integer id;
    private String name;
    private String caption;
    private String pics;
    private String specs;
    private String unit;
    private Integer hot;
    private Integer comments;
    private Integer agrees;
    private Integer recommend;
    private Integer status;
    private String service;
    private String info;
    private Integer countryId;
    private String addr;
    private LocalDateTime createTime;
    private LocalDateTime updateTime;
}

目标类

@Getter
@Setter
@ToString
@Builder
@AllArgsConstructor
@NoArgsConstructor
public class SpuVO {
    private Integer id;
    private String name;
    private String caption;
    private String pics;
    private String specs;
    private String unit;
    private String service;
    private String addr;
}

转换接口

@Mapper(componentModel = "spring")
public interface SpuTrans {
    List<SpuVO> spuList2SpuVOList(List<Spu> spuList);
}

测试类

@Controller
@RequestMapping()
public class IndexController {
    @Resource
    private SpuTrans spuTrans;
    @Resource
    private SpuService spuService;

    @GetMapping("/list")
    public ModelAndView list(ModelAndView mav) {
        //轮播图
        List<Spu> spuList = spuService.selectAll();
  		List<SpuVO> spuVOList = spuTrans.spuList2SpuVOList(spuList);

        mav.addObject("spuVOList", spuVOList);
        mav.setViewName("spu_list");
        return mav;
    }
}

到此这篇关于Java Spring集成MapStruct详情的文章就介绍到这了,更多相关Spring集成MapStruct内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Java中启动线程start和run的两种方法

    Java中启动线程start和run的两种方法

    start()方法它的作用是启动一个新线程,run()就和普通的成员方法一样,可以被重复调用。接下来通过本文给大家分享Java中启动线程start和run的两种方法,需要的朋友参考下吧
    2017-11-11
  • java中LinkedList使用迭代器优化移除批量元素原理

    java中LinkedList使用迭代器优化移除批量元素原理

    本文主要介绍了java中LinkedList使用迭代器优化移除批量元素原理,文中通过示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-10-10
  • 动态代理模拟实现aop的示例

    动态代理模拟实现aop的示例

    下面小编就为大家带来一篇动态代理模拟实现aop的示例。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧,希望对大家有所帮助
    2017-11-11
  • 理解java设计模式之建造者模式

    理解java设计模式之建造者模式

    这篇文章主要帮助大家理解java设计模式之建造者模式,对建造者模式,即生成器模式进行实例讲解,感兴趣的朋友可以参考一下
    2016-02-02
  • Springboot mybatis常见配置问题解决

    Springboot mybatis常见配置问题解决

    这篇文章主要介绍了Springboot mybatis常见配置问题解决,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2019-11-11
  • Java编程异常简单代码示例

    Java编程异常简单代码示例

    这篇文章主要介绍了Java编程异常简单代码示例,还是比较不错的,这里分享个大家,需要的朋友可以参考下。
    2017-11-11
  • Java实现Floyd算法求最短路径

    Java实现Floyd算法求最短路径

    这篇文章主要为大家详细介绍了Java实现Floyd算法求最短路径,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2018-01-01
  • springboot加载命令行参数ApplicationArguments的实现

    springboot加载命令行参数ApplicationArguments的实现

    本文主要介绍了springboot加载命令行参数ApplicationArguments的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-04-04
  • 关于MyBatis各种SQL操作详解

    关于MyBatis各种SQL操作详解

    这篇文章主要介绍了关于MyBatis各种SQL操作详解,MyBatis 是一款优秀的半自动的ORM持久层框架,它支持自定义 SQL、存储过程以及高级映射,需要的朋友可以参考下
    2023-05-05
  • Java线程中Thread方法下的Join方法详解

    Java线程中Thread方法下的Join方法详解

    这篇文章主要介绍了Java线程中Thread方法下的Join方法详解,在项目中往往会遇到这样一个场景,就是需要等待几件事情都给做完后才能走下面的事情,这个时候就需要用到Thread方法下的Join方法,join方法是无参且没有返回值的,需要的朋友可以参考下
    2024-01-01

最新评论