• mapstruct原理


    MapStruct是基于JSR 269的Java注解处理器,
    
    org.mapstruct:mapstruct:包含了必要的注解,例如@Mapping;在Java 8或更高版本中,使用
    org.mapstruct:mapstruct-jdk8,而不是利用Java 8中引入的语言进行改进。
    org.mapstruct:mapstruct-processor:包含生成映射器实现的注解处理器
    
    在编译过程中会根据自己的Mapper接口生成对应的实现类,比如上面定义的UserMapStruct类
    根据@Mapper标记处理器的入口,利用mapstruct-processor的注解处理器处理映射器实现,
    
    查看源码发现,主要就是利用JSR 269的java注解处理器,通过入口@Maapper利用写好的模板工厂类与类似jsp的模板引擎,具体处理利用mapstruct-processor注解处理器生成是转换得实现类。
    

    具体源码大家自行研究,我这里不做过多介绍。
    总之一句话,没用反射就是快。还是那句话,若做项目之前不进行约束,胡乱命名各种属性的话,还是不建议使用此快捷工具,因为无规矩不成方圆,乱七八糟的项目,不如手动set,get
    
  • 相关阅读:
    erl_0012 timer:tc 测试模块函数调用运行耗时
    erl_0011 erlang 定时器相关
    erl0010
    erl0009
    erl0008
    erl0007
    erl0006
    erl0005
    开开心心过生活、踏踏实实做技术
    Android-理解Intent
  • 原文地址:https://www.cnblogs.com/wangbiaohistory/p/15848203.html
Copyright © 2020-2023  润新知