《Mapper(compomentModel=”spring”)实例详解》几十行代码如何优化成一行

简介: 《Mapper(compomentModel=”spring”)实例详解》几十行代码如何优化成一行

1、 需求前提


当一个对象有很多字段时,user1里的几十个字段,全部赋值到user2里的时候,需要写几十个get,set方法,代码量冗余繁杂,相信到大家都遇到过这种业务场景,这种千变一律的copy相信大家都已厌烦,那么,我们如何把这几十行代码变成1一行代码呢?答案就是mapStruct


本文会教导如何简单使用此注解,并且特殊情况下进阶使用。


首先需要倒入mavan仓库的jar包,如下,可以直接拷贝:


image.png


2、 简单使用


很简单,定义一个抽象接口,然后在使用的时候注入接口,使用conver方法吧一个对象转成另一个对象,项目builder的时候会自动生成需要的get,set方法,完成我们的对象赋值功能。


3、 使用进阶


(1) 当存在不同字段时候,用mappings注解转换。

(2) 还可以指定枚举java(“TypeEnum.name.getCode()”),注意,此时用的就不是source,用的是expression。如图


image.png


(3) 重点:当两个list需要转换并且里面有不同字段时候,需要先写这两个list里存放的对象转换。如图


image.png

相关文章
|
5月前
|
前端开发 Java UED
从基础到进阶:Spring Boot + Thymeleaf 整合开发中的常见坑与界面优化
本文深入探讨了 **Spring Boot + Thymeleaf** 开发中常见的参数绑定问题与界面优化技巧。从基础的 Spring MVC 请求参数绑定机制出发,分析了 `MissingServletRequestParameterException` 的成因及解决方法,例如确保前后端参数名、类型一致,正确设置请求方式(GET/POST)。同时,通过实际案例展示了如何优化支付页面的视觉效果,借助简单的 CSS 样式提升用户体验。最后,提供了官方文档等学习资源,帮助开发者更高效地掌握相关技能。无论是初学者还是进阶用户,都能从中受益,轻松应对项目开发中的挑战。
209 0
|
5月前
|
存储 Java 数据库
Spring Boot 注册登录系统:问题总结与优化实践
在Spring Boot开发中,注册登录模块常面临数据库设计、密码加密、权限配置及用户体验等问题。本文以便利店销售系统为例,详细解析四大类问题:数据库字段约束(如默认值缺失)、密码加密(明文存储风险)、Spring Security配置(路径权限不当)以及表单交互(数据丢失与提示不足)。通过优化数据库结构、引入BCrypt加密、完善安全配置和改进用户交互,提供了一套全面的解决方案,助力开发者构建更 robust 的系统。
163 0
|
9月前
|
JSON Java API
利用Spring Cloud Gateway Predicate优化微服务路由策略
Spring Cloud Gateway 的路由配置中,`predicates`​(断言)用于定义哪些请求应该匹配特定的路由规则。 断言是Gateway在进行路由时,根据具体的请求信息如请求路径、请求方法、请求参数等进行匹配的规则。当一个请求的信息符合断言设置的条件时,Gateway就会将该请求路由到对应的服务上。
694 69
利用Spring Cloud Gateway Predicate优化微服务路由策略
|
6月前
|
Java 微服务 Spring
微服务——SpringBoot使用归纳——Spring Boot中使用拦截器——拦截器使用实例
本文主要讲解了Spring Boot中拦截器的使用实例,包括判断用户是否登录和取消特定拦截操作两大场景。通过token验证实现登录状态检查,未登录则拦截请求;定义自定义注解@UnInterception实现灵活取消拦截功能。最后总结了拦截器的创建、配置及对静态资源的影响,并提供两种配置方式供选择,帮助读者掌握拦截器的实际应用。
204 0
|
缓存 监控 Java
优化Spring Boot应用的数据库访问性能
优化Spring Boot应用的数据库访问性能
|
10月前
|
缓存 监控 Java
|
存储 数据采集 Java
Spring Boot 3 实现GZIP压缩优化:显著减少接口流量消耗!
在Web开发过程中,随着应用规模的扩大和用户量的增长,接口流量的消耗成为了一个不容忽视的问题。为了提升应用的性能和用户体验,减少带宽占用,数据压缩成为了一个重要的优化手段。在Spring Boot 3中,通过集成GZIP压缩技术,我们可以显著减少接口流量的消耗,从而优化应用的性能。本文将详细介绍如何在Spring Boot 3中实现GZIP压缩优化。
1343 6
|
消息中间件 Java Kafka
Spring boot 自定义kafkaTemplate的bean实例进行生产消息和发送消息
Spring boot 自定义kafkaTemplate的bean实例进行生产消息和发送消息
590 5
|
缓存 监控 Java
如何优化Spring Boot应用性能?
【7月更文挑战第16天】如何优化Spring Boot应用性能?
271 2
|
缓存 监控 Java
优化Spring Boot应用的数据库访问性能
优化Spring Boot应用的数据库访问性能

热门文章

最新文章