@controller 和@service的区别

今天面试时被问到一道问题:@controller与@service的区别,还有@controller里可以@service吗?这道题纠结了好久了,就大神的解答!... 今天面试时被问到一道问题:@controller与@service的区别,还有@controller里可以@service吗?这道题纠结了好久了,就大神的解答! 展开
 我来答
帐号已注销
2019-10-06 · TA获得超过25.9万个赞
知道小有建树答主
回答量:2206
采纳率:96%
帮助的人:82.2万
展开全部

区别一:用途不一样

1、@Service用于标注业务层组件

2、@Controller用于标注控制层组件(如struts中的action)

区别二:执行操作不一样

1、service层:在接触Spring框架时会了解到面向接口编程,表示层调用控制层,控制层调用业务层,业务层调用数据访问层

2、controller层:可以看做是view和Model之间进行沟通的桥梁,可以分发用户的请求,并选择恰当的视图以用于显示,同时可以解释用户的输入并映射为模型层可以执行的操作。

扩展资料

MVC开始是存在于桌面程序中的,M是指业务模型,V是指用户界面,C则是控制器,使用MVC的目的是将M和V的实现代码分离,从而使同一个程序可以使用不同的表现形式。

MVC 是一种使用 MVC(Model View Controller 模型-视图-控制器)设计创建 Web 应用程序的模式:

Model(模型)表示应用程序核心(比如数据库记录列表)。

View(视图)显示数据(数据库记录)。

Controller(控制器)处理输入(写入数据库记录)。

MVC 模式同时提供了对 HTML、CSS 和 JavaScript 的完全控制。

参考资料来源:百度百科—MVC框架

蓝色旭光
推荐于2017-09-10 · TA获得超过313个赞
知道小有建树答主
回答量:153
采纳率:100%
帮助的人:113万
展开全部
他们都是spring提供的注解,其中@controller对应的是mvc模式中的c,即控制层,@service是处于m,即业务层,并且@controller中是可以用@service的。
追问
那是不是可以理解为service与controller合并了
追答
真的不好意思,我本来以为是@controller中是可以用@service的,但是刚刚和同学一起探讨了一下这个问题,最终我们感觉应该是不可以的,因为那样spring就不能分辨这个类到底是controller还是service了,不好意思,是不可以的~~
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式