面试题:@Controller、@Service、@Component有什么用?可以互换使用吗?

news/2024/10/15 22:12:46/

我的回答

  • @Ctronller
    一般约定@Controller是用于控制层,用来声明接口。

  • @Service
    @Service是用来注解在业务层上。

  • @Component
    一般我们自己定义的类,没有明确属于哪一层,就可以使用@Component注解,比如

这样代码架构更容易维护,也更清晰。

我做过实验,在SpringBoot项目中验证过@Controller和@Service互换使用,没有出现问题,且暴露出去的接口也可以正常访问。

验证

我确实做过实验验证过,代码在公司,不能复制出来。

欢迎讨论这个问题

我在网上搜索这个问题的答案,信息比较少,不知道面试官这样问问题的目的在哪儿,是Spring中有什么知识点和这个问题相关吗?
欢迎大家在评论区或者私信我讨论。

ChatGPT的回答

问了ChatGPT,GPT说是可能会报错,但是我做过实验,没有报错,工程能正常运行,暴露的接口也能正常访问。


http://www.ppmy.cn/news/1444637.html

相关文章

uniapp自定义顶部导航栏

首先uniapp获取设备信息:uni.getSystemInfo或uni.getSystemInfoSync,可用于设置顶部安全区 留一个设备安全区的位置哦 然后在pages.json文件里配置自定义导航栏 {"pages": [ //pages数组中第一项表示应用启动页,参考&#xff1a…

Unity Meta Quest MR 开发(七):使用 Stencil Test 模板测试制作可以在虚拟与现实之间穿梭的 MR 传送门

文章目录 📕教程说明📕Stencil Test 模板测试📕Stencil Shader📕使用 Unity URP 渲染管线设置模板测试⭐Render Pipeline Asset 与 Universal Renderer Data⭐删除场景中的天空盒⭐设置虚拟世界的层级 Layer⭐设置模板测试 &#…

leetcode2389--感染二叉树需要的总时间

1. 题意 给定一个节点,每秒该节点会感染相邻的节点,受感染的节点下一秒也会感染周围节点; 求使得所有节点感染的时间 2. 题解 2.1 dfs建图bfs搜索层次 我们将目标节点找到,并从该节点出发找到以该节点形成的树的深度即可。 …

数据仓库实验二:关联规则挖掘实验

目录 一、实验目的二、实验内容和要求三、实验步骤1、创建数据库和表2、挖掘关联规则(1)新建一个 Analysis Services 项目 Sales(2)建立数据源视图(3)建立挖掘结构 Sales.dmm(4)部署…

leetcode51.N皇后(困难)-回溯法

思路 都知道n皇后问题是回溯算法解决的经典问题,但是用回溯解决多了组合、切割、子集、排列问题之后,遇到这种二维矩阵还会有点不知所措。 首先来看一下皇后们的约束条件: 不能同行不能同列不能同斜线 确定完约束条件,来看看究…

k8s笔记 | Service 服务

创建nginx-deploy.yaml 【上节课的内容】 apiVersion: apps/v1 kind: Deployment metadata:name: nginx-deploylabels:type: nginx-deploytest: 1.0.0namespace: default spec:replicas: 2 # 副本数revisionHistoryLimit: 10 # 保留的历史版本数selector: # 选择器matchLabels…

buuctf——web题目练习

1.极客大挑战2019 easysql 密码或者用户输入万能密码即可 关于万能密码的理解和原理,可以参考这篇BUUCTF[极客大挑战 2019] EasySQL 1_[极客大挑战 2019]easysql 1-CSDN博客 2.极客大挑战2019 have fun 题目源码 需要构造payload 网页传参可参考:…

.NET 面向对象程序设计 —— 设计模式 详细版

1.反射 “到底如何去改良策略模式呢?”小菜恳切地问道。 “你仔细观察过没有,你的代码,不管是用工厂模式写的,还是用策略模式写的,那个分支的 switch 依然去不掉。 原因在哪里?”大鸟反问道。 “因为程序里有下拉选择,用户是有选择的,那么程序就必须要根据用户的选择来…