加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Java > 正文

java – 从不同资源创建视图对象的最佳方法(模式?)

发布时间:2020-12-15 02:29:30 所属栏目:Java 来源:网络整理
导读:目前我正在从搜索结果(来自不同的单一资源)构建一个视图对象,如下所示: ViewObject vo = searchResultToViewObjectMapper.map(searchResult); 这很好用. 但是,现在我想添加一些图片.这些图片是网址,我只能通过搜索结果来源之外的其他资源来确定其位置. 我的
目前我正在从搜索结果(来自不同的单一资源)构建一个视图对象,如下所示:

ViewObject vo = searchResultToViewObjectMapper.map(searchResult);

这很好用.

但是,现在我想添加一些图片.这些图片是网址,我只能通过搜索结果来源之外的其他资源来确定其位置.

我的第一个想法是使用Builder Pattern,它会变成:

ViewObject vo = viewObjectBuilder.build(searchResult);

并且viewObjectBuilder将执行以下操作:

private SomeOtherResourceRepository someOtherResourceRepo;

private SomeUrlBuilder someUrlBuilder;

private SearchResultToViewObjectMapper searchResultToViewObjectMapper;

public ViewObject build(SearchResult) {
    ViewObject vo = searchResultToViewObjectMapper.map(searchResult);

    String reference = someOtherResourceRepo.getOtherResource(searchResult);

    String urlToOtherResource = someUrlBuilder.build(reference);
    vo.setUrlToOtherResource(reference);

    return vo;
}

问题是:这是一个好方法吗?或者还有其他(更好的)方法吗?我也很好奇DDD方法如何做到这一点.

提前致谢!

解决方法

如果在创建对象之前拥有所有可用资源,使用工厂将为您工作 – 只需将它们传递给工厂方法,它就会发挥作用.

如果您正在创建的对象(视图)是按步骤创建的 – 即首先您只有searchResult,在此之后您可以挖掘更多并获得一些额外的URL,这些URL将添加到视图中,然后您可以进行更多搜索以获取更多信息,只有你想获得视图对象,构建器才是更好的解决方案.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读