关于controller层的疑惑

来源:6-2 登录功能开发

Dulk

2018-06-11

controller层的意义在于调用service后进行业务流程控制,我有点疑惑的是,比如老师的如下代码:

http://img.mukewang.com/szimg/5b1e425b0001a31808670386.jpg


所以单从三层架构模式来说,我理解的是response的success判断不属于流程控制,应该把session传给service,由service去完成session.setAttribute(),这种想法对吗?


另外我还有一些个人没想明白的问题:

1、这种前后端分离的模式,controller往往直接就调用service返回json响应就完事了,那么似乎就没有所谓流程控制的说法了,整个controller甚至一行代码就完了,是这样吗?

2、我的实战经历不多,controller作为业务流程控制的情况,老师能不能给我举个业务例子呢?这种情况往往是出现在前后端不分离的情况下吗?如考虑根据service不同结果进行不同的页面跳转?

写回答

2回答

Geely

2018-06-17

嗨~你好~亲爱的同学~

1.首先session对象是web层的,它不应该传到service层来处理的哟。

2.我现在还没理解你所谓的控制流程是什么意思....能举个具体例子么,

目前我们项目的写法是标准企业级写法,逻辑都在service里处理,属于web层的对象在controller层处理。

具体的页面跳转是要放在controller里,但是我们前后端分离的项目,是不需要进行服务器转发或者重定向的。


1
1
Dulk
(1)“首先session对象是web层的,它不应该传到service层来处理”,豁然开朗,谢谢老师; (2)我也说不明白,我这样问吧,从分层来讲,controller只是作用来控制跳转不同视图的吗?
2018-06-19
共1条回复

星辰Iron

2018-06-11

你好同学,response的success判断当然是流程控制,成功与否是会直接决定session当中是否添加用户信息的。

0
0

从0开始 独立完成企业级Java电商网站服务端开发

前后端分离,数据库接口设计,架构设计,功能开发,上线运维

9476 学习 · 8804 问题

查看课程