我的一个Mapstruct映射器没有使用另一个映射器与@mapper(uses=
我们的验证支持需要映射器
将实体映射到DTO。一个ValidationSupportNeedEntity
包含一个ActivityEntity
属性,我正在尝试从该属性映射到一个Activity
DTO。
因此,问题在于嵌套对象,即ActivityEntity
到Active
。
以下是源代码:
从ValidationSupport NeedMapper.java:
@Mapper(uses = {LifecycleErrorMessagesMapper.class, ActivityMapper.class})
public interface ValidationSupportNeedMapper {
ValidationSupportNeed toValidationSupportNeed(ValidationSupportNeedEntity source);
...
来自ActivityMapper.java:
@Component
public class ActivityMapper {
public Activity toActivity(ActivityEntity activity) {
//Implementation
}
public ActivityEntity toActivityEntity(Activity activity) {
//Implementation
}
}
来自ValidationSupportNeedEntity.java(实体)
public class ValidationSupportNeedEntity {
private ActivityEntity activityEntity;
来自ValidationSupporteed.java(DTO)
public class ValidationSupportNeed implements AutoValidated {
private Activity validationActivity;
但是,Mapstruct似乎忽略了在
属性,并继续生成自己的映射方法,如下所示:@Mapper
注释上使用=
@Override
public ValidationSupportNeed toValidationSupportNeed(ValidationSupportNeedEntity source) {
if ( source == null ) {
return null;
}
ValidationSupportNeed validationSupportNeed = new ValidationSupportNeed();
validationSupportNeed.setValidationActivity( validationSupportNeedEntityToActivity( source ) );
...
}
protected Activity validationSupportNeedEntityToActivity(ValidationSupportNeedEntity validationSupportNeedEntity) {
if ( validationSupportNeedEntity == null ) {
return null;
}
Activity activity = new Activity();
activity.setCode( validationSupportNeedEntity.getValidationActivityCode() );
return activity;
}
我错过了什么?有人能帮忙吗?
编辑:ActivityMapper
未自动连接到ValidationSupportNeedMapper
实现中。
添加映射注释解决了以下问题:
@Mapping(source = "activityEntity", target = "validationActivity")
ValidationSupportNeed toValidationSupportNeed(ValidationSupportNeedEntity source);
请注意,属性的名称是不同的。
我在一个android应用程序中工作,正在使用一个DialogFragment来显示一个对话框,我想让那个DialogFragment不可取消。我已经将对话框可取消属性设置为false,但它仍然不受影响。 请查看我的代码,并建议我一个解决方案。
我从以下来源下载了应用程序https://github.com/springframeworkguru/spring5-mvc-rest/tree/vendor-api,但Mapstruct遇到了问题。 我认为在Intellij注释中@mapper不为mapper创建bean。我没有改变John GitHub的代码。你知道吗?我试图将生成的路径源更改为目标,但这没有帮助,谢谢你的帮助。
问题内容: 自最新版本以来,我经历了Chrome的某些意外行为:在Firefox中,此代码可以正常运行: 它在Chrome中不起作用(只需下载一个名为“下载”的文件),但是以前效果很好。我必须更改一下它又能正常工作吗? 问题答案: 经过研究,我终于找到了您的问题。 下载属性: 如果存在HTTP标头Content-Disposition:,并且提供的文件名与此属性不同,则HTTP标头的优先级高于此属
我尝试将ini文件解析为可以在ant脚本中使用的属性。我有以下几点: 我试图做的是解析所有的name=value对,并将它们放入属性中,如:section。名称=值; 不知何故,“echoMsg”目标中没有记住该部分。我想记住部门名称。 所以 应该成为: 这是我的ant脚本的输出: 如您所见,未设置最后一个“${prevSection}”。我希望它是“全球性的”。 我试着用它来代替财产,但没有区别
我有一个ASP. NET核心Web API。 一个endpoint,它接受一个名为搜索的模型。它有一个名为表达式类型查询的属性。这个表达式对象有子类。 我将以下JSON发布到我的endpoint(应用程序的内容类型/JSON) {"查询":{"字段ID":"主体","值":"蛋糕","运算符":"匹配"}} 首先,查询参数只是基本表达式——一个多态性问题! 所以我以为是定制的模型活页夹。 我可以针
问题内容: 我需要在CSS中使用属性选择器来更改不同颜色和图像上的链接,但是它不起作用。 我有这个HTML: 而这个CSS: 为什么背景不是红色的? 问题答案: 在href后面使用$。这将使属性值匹配字符串的结尾。