我们正在尝试使用spring-boot-web和百里香叶来构建应用程序。这就是我们现在所拥有的。
@RestController
API。@Controller
端点。来自UI的任何请求都将来自此层,我们计划调用其余层。这是一种正确的方法,如果是,理想情况下我应该从网络层调用其余层吗?一个想法可能是使用REST模板来调用REST层并将其视为一个隔离的API,但我不确定这是否是正确的方法。感觉就像一个额外的网络电话给我。
答案 0 :(得分:1)
如果您想使用AJAX(jquery,javascript,React,Angular)从客户端调用该端点,那么您的应用程序架构中只需要@RestController。
如果您的页面是从服务器端呈现的,并且FORMs是在没有AJAX的情况下提交的,那么您只需要@Controller
要将业务逻辑与控制器(如您所说的Web控制器)分开,您可以引入可以从@Controller调用的@Service层。
答案 1 :(得分:0)
控制器不需要调用Rest控制器。 创建Controller和Rest Controller使用的公共服务,如果您需要休息服务以及UI。