Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/facebook/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 将对象集映射到字符串集_Java_Spring_Spring Boot_Spring Mvc_Mapstruct - Fatal编程技术网

Java 将对象集映射到字符串集

Java 将对象集映射到字符串集,java,spring,spring-boot,spring-mvc,mapstruct,Java,Spring,Spring Boot,Spring Mvc,Mapstruct,我是MapStruct的新手。 我有一个Word对象,它包含一个字符串值和一组自身,我想将它映射到包含一个值和一组字符串值的WordDTO。我不知道该怎么做。 正如我在评论中所说,mapstruct无法映射两个对象是有道理的,但如果有帮助,我将错误放在下面: 错误:(20,13)java:无法将属性“java.util.Set同义词”映射到“java.util.Set同义词”。考虑声明/实现映射方法:“JavaUTL.SETMAP(JavaUTILSET值)”< /COD> 词类: publi

我是MapStruct的新手。 我有一个Word对象,它包含一个字符串值和一组自身,我想将它映射到包含一个值和一组字符串值的WordDTO。我不知道该怎么做。 正如我在评论中所说,mapstruct无法映射两个对象是有道理的,但如果有帮助,我将错误放在下面:
错误:(20,13)java:无法将属性“java.util.Set同义词”映射到“java.util.Set同义词”。考虑声明/实现映射方法:“JavaUTL.SETMAP(JavaUTILSET值)”< /COD> 

词类:

public class Word {
    private String wordValue;
    private Set<Word> synonyms;
}

谢谢您的帮助。

Mapstruct正在抱怨他无法将
Word
转换为
String
。您必须明确地告诉映射程序如何进行

以下是一个例子:


@制图员
公共接口字映射器{
WordMapper实例=Mappers.getMapper(WordMapper.class);
WordToWordToOrddTo(Word);
Word-Word-to-Word(Word-to-Word-to);
//将字符串映射到单词
@映射(source=“value”,target=“wordValue”)
单词stringToWord(字符串值)
//将单词映射到字符串
默认字符串wordToString(Word){
返回(word==null)?null:word.getWordValue();
}
}

Mapstruct抱怨他无法将
Word
转换为
String
。您必须明确地告诉映射程序如何进行

以下是一个例子:


@制图员
公共接口字映射器{
WordMapper实例=Mappers.getMapper(WordMapper.class);
WordToWordToOrddTo(Word);
Word-Word-to-Word(Word-to-Word-to);
//将字符串映射到单词
@映射(source=“value”,target=“wordValue”)
单词stringToWord(字符串值)
//将单词映射到字符串
默认字符串wordToString(Word){
返回(word==null)?null:word.getWordValue();
}
}

同义词.stream().map(Word::getWordValue).collect(Collectors.toSet())
怎么样?@NikolaiDmitriev MapStruct是一个代码生成器,用于在Java中创建高效、类型安全的bean到bean映射。使用mapper时会出现什么错误?@dan1st这将绝对正确。。。但由于某些原因,我希望mapstruct在编译时生成此代码。问题是我不知道应该把它放在哪里。可能类似于custome generator?@JohnMercier我们无法将对象映射到字符串。//错误//错误:(20,13)java:无法将属性“java.util.Set同义词”映射到“java.util.Set同义词”。考虑声明/实现映射方法:“JavaUTILSETMAP(JavaUTILSET值)”。关于<代码>同义词。流():map(word::GETWORDValue)。在Java中键入安全的bean-to-bean映射。使用映射器时会出现什么错误?@dan1st这将绝对正确。。。但由于某些原因,我希望mapstruct在编译时生成此代码。问题是我不知道应该把它放在哪里。可能类似于custome generator?@JohnMercier我们无法将对象映射到字符串。//错误//错误:(20,13)java:无法将属性“java.util.Set同义词”映射到“java.util.Set同义词”。考虑声明/实现映射方法:“java. UTI.SETMAP(JavaUTILSET值)”。
public class WordDTO {
    private String wordValue;
    private Set<String> synonyms;
}
@Mapper
public interface WordMapper {
    WordMapper INSTANCE= Mappers.getMapper(WordMapper.class);

    WordDTO wordToWordDTO(Word word);
    Word wordDTOToWord(WordDTO wordDTO);
}