【发布时间】:2018-06-15 19:32:59
【问题描述】:
假设有一个应用程序在控制器层使用forms 包和<whatever>Form.java 进行验证,因此每个需要验证的请求都有一个对应的<requestName>Form.java 类。
这导致控制器方法签名如下所示:
TemplateController.java
@PostMapping
public Mono<SmsMessageTemplate> create(@Valid @RequestBody Mono<TemplateForm> templateForm)
然后有一个带有方法签名的服务层,如下所示:
TemplateService.java
public Mono<SmsMessageTemplate> create(TemplateForm formData) {...}
也可以这样实现:
TemplateService.java
public Mono<SmsMessageTemplate> create(String template name, String templateText) {...}
哪种方式更好,为什么?我认为将Form 类传递给服务层可能会混合层概念,并且应该将表单保留在控制器层中,以便更好地理解传递的参数,而无需在类中来回导航。我错过了什么吗?
【问题讨论】:
-
这听起来很像一个基于意见的问题。
标签: java spring spring-mvc