Laravel  
laravel
文档
数据库
架构
入门
php技术
    
Laravelphp
laravel / php / java / vue / mysql / linux / python / javascript / html / css / c++ / c#

java mapstruct

作者:我说°走了就别回来   发布日期:2025-12-07   浏览:58

// 引入MapStruct依赖
// 在pom.xml中添加以下依赖:
/*
<dependency>
    <groupId>org.mapstruct</groupId>
    <artifactId>mapstruct</artifactId>
    <version>1.5.2.Final</version>
</dependency>
<dependency>
    <groupId>org.mapstruct</groupId>
    <artifactId>mapstruct-processor</artifactId>
    <version>1.5.2.Final</version>
    <scope>provided</scope>
</dependency>
*/

// 定义源对象和目标对象
public class Source {
    private String id;
    private String name;

    // getters and setters
}

public class Target {
    private String id;
    private String fullName;

    // getters and setters
}

// 定义Mapper接口
import org.mapstruct.Mapper;
import org.mapstruct.Mapping;
import org.mapstruct.factory.Mappers;

@Mapper
public interface SourceTargetMapper {
    SourceTargetMapper INSTANCE = Mappers.getMapper(SourceTargetMapper.class);

    @Mapping(source = "name", target = "fullName")
    Target sourceToTarget(Source source);
}

// 使用Mapper进行转换
public class Main {
    public static void main(String[] args) {
        Source source = new Source();
        source.setId("1");
        source.setName("John Doe");

        Target target = SourceTargetMapper.INSTANCE.sourceToTarget(source);

        System.out.println("ID: " + target.getId());
        System.out.println("Full Name: " + target.getFullName());
    }
}

解释说明

  1. 引入MapStruct依赖:在pom.xml中添加MapStruct的依赖,确保项目可以使用MapStruct的功能。
  2. 定义源对象和目标对象:创建两个类SourceTarget,分别表示源对象和目标对象。这两个类包含不同的属性,但可以通过映射规则进行转换。
  3. 定义Mapper接口:使用@Mapper注解定义一个接口SourceTargetMapper,并在其中声明一个方法sourceToTarget,该方法用于将Source对象转换为Target对象。通过@Mapping注解指定具体的属性映射规则。
  4. 使用Mapper进行转换:在Main类中,创建一个Source对象并设置其属性,然后使用SourceTargetMapper.INSTANCE.sourceToTarget方法将其转换为Target对象,并输出结果。

这样,你就可以使用MapStruct轻松地在不同对象之间进行属性映射了。

上一篇:java divide函数

下一篇:java foreach continue

大家都在看

java判断是windows还是linux

java连接数据库的代码

java djl

ubuntu 卸载java

es java api

java读取excel中的图片

java新建

java sort用法

java collections.sort

java file类的方法

Laravel PHP 深圳智简公司。版权所有©2023-2043 LaravelPHP 粤ICP备2021048745号-3

Laravel 中文站