Spring 中 @Service 和 @Resource 注解的区别

发布时间 - 2026-01-10 23:25:20    点击率:

Spring 中 @Service 和 @Resource 注解的区别

1 前言

在咱们使用 spring 框架的时候,注解是“不可或缺”的一部分,她帮我们脱离了配置繁琐的 XML 文件的工作,但有一点却需要我们自己去把握,那就是“3何”,即“何时何地用何注解?”在本篇博文中,作者就简单介绍一下如何恰当的使用 @Service 和 @Resource 这两个注解。

2 注解

2.1 @Service

当咱们需要定义某个类为一个 bean 的时候,就可以在这个类的类名上一行加一个 @Service 注解,即

@Service("yeepay")
public class YeepayService(){
 public static void sayHi(){
  System.out.println("Hi,维C果糖!");
 }
}

在这里,@Service(“XXX”),就相当于将这个类定义为一个 bean,其中,XXX 即为 bean 的名称。此外,咱们只用此注解标记 bean,如果不填 value 的话,则 Spring 生成的 bean 名称是取类名,然后将首字母小写。

2.2 @Resource

当咱们需要在某个类中定义一个属性,并且该属性是一个已存在的 bean,在为该属性赋值或注入的时候,就需要在该属性的上一行添加一个 @Resource 注解,即

@Service
public class YeepayService(){

 @Resource(name="yeePay")
 private YeePay yeePay;

 public static void sayHi(){
  System.out.println("Hi,维C果糖!");
 }
}

在这里,@Resource(name=”XXX”),就相当于为该属性注入一个名称为 XXX 的 bean。

3 引申

在 Spring 2.5 中,其为咱们提供了丰富的注解,在此介绍四个常用的注解:

  1. @Service,用于标注业务层组件(通常定义的 Service 层就用这个注解);
  2. @Controller,用于标注控制层组件(如 Struts 中的 action);
  3. @Repository,用于标注数据访问组件,即 DAO 层组件;
  4. @Component,泛指组件,当组件不好归类的时候,咱们就可以用这个注解进行标注。

以上这四个注解都是基于类的,咱们可以定义名称,也可以不定义名称。在不定义名称的时候,Spring 就会默认以类名且首字母小写的词组为 bean 的名称。此外,大家还可以通过阅读“点我、点我、点我”,了解 @Autowired 和 @Resource 注解的区别。

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!


# Spring  #   # @Service  #   # @Resource  # 注解  # 注解详解  # Spring Service中的@Service注解的使用小结  # Spring中@Service注解的作用与@Controller和@RestController之间  # 解析Spring中@Controller@Service等线程安全问题  # SpringBoot如何在线程中获取@Service Bean类  # spring注解@Service注解的使用解析  # Spring @Bean vs @Service注解区别  # 详解Spring注解--@Autowired、@Resource和@Service  # 在这里  # 为该  # 都是  # 首字母  # 是一个  # 就会  # 在这个  # 还可以  # 在此  # 可以用  # 这两个  # 希望能  # 就用  # 谢谢大家  # 介绍一下  # 不可或缺  # 即为  # 其为  # 就可以  # 类中 


相关栏目: 【 网站优化151355 】 【 网络推广146373 】 【 网络技术251813 】 【 AI营销90571


相关推荐: 原生JS实现图片轮播切换效果  Midjourney怎样加参数调细节_Midjourney参数调整技巧【指南】  在线ppt制作网站有哪些软件,如何把网页的内容做成ppt?  大连企业网站制作公司,大连2025企业社保缴费网上缴费流程?  如何快速搭建自助建站会员专属系统?  成都网站制作公司哪家好,四川省职工服务网是做什么用?  邀请函制作网站有哪些,有没有做年会邀请函的网站啊?在线制作,模板很多的那种?  ai格式如何转html_将AI设计稿转换为HTML页面流程【页面】  夸克浏览器网页跳转延迟怎么办 夸克浏览器跳转优化  如何安全更换建站之星模板并保留数据?  Win11怎么设置默认图片查看器_Windows11照片应用关联设置  专业型网站制作公司有哪些,我设计专业的,谁给推荐几个设计师兼职类的网站?  如何制作新型网站程序文件,新型止水鱼鳞网要拆除吗?  Laravel如何获取当前登录用户信息_Laravel Auth门面使用与Session用户读取【技巧】  android nfc常用标签读取总结  香港代理服务器配置指南:高匿IP选择、跨境加速与SEO优化技巧  Laravel如何使用集合(Collections)进行数据处理_Laravel Collection常用方法与技巧  黑客如何通过漏洞一步步攻陷网站服务器?  ,在苏州找工作,上哪个网站比较好?  悟空浏览器如何设置小说背景色_悟空浏览器背景色设置【方法】  Laravel Seeder怎么填充数据_Laravel数据库填充器的使用方法与技巧  今日头条AI怎样推荐抢票工具_今日头条AI抢票工具推荐算法与筛选【技巧】  手机网站制作平台,手机靓号代理商怎么制作属于自己的手机靓号网站?  Laravel DB事务怎么使用_Laravel数据库事务回滚操作  绝密ChatGPT指令:手把手教你生成HR无法拒绝的求职信  香港网站服务器数量如何影响SEO优化效果?  昵图网官网入口 昵图网素材平台官方入口  Laravel如何实现全文搜索_Laravel Scout集成Algolia或Meilisearch教程  EditPlus中的正则表达式实战(6)  Laravel storage目录权限问题_Laravel文件写入权限设置  Gemini手机端怎么发图片_Gemini手机端发图方法【步骤】  如何在香港免费服务器上快速搭建网站?  Laravel如何使用Eloquent ORM进行数据库操作?(CRUD示例)  QQ浏览器网页版登录入口 个人中心在线进入  企业在线网站设计制作流程,想建设一个属于自己的企业网站,该如何去做?  Linux安全能力提升路径_长期防护思维说明【指导】  如何实现javascript表单验证_正则表达式有哪些实用技巧  如何用VPS主机快速搭建个人网站?  怎么制作一个起泡网,水泡粪全漏粪育肥舍冬季氨气超过25ppm,可以有哪些措施降低舍内氨气水平?  Laravel如何实现用户角色和权限系统_Laravel角色权限管理机制  Swift开发中switch语句值绑定模式  美食网站链接制作教程视频,哪个教做美食的网站比较专业点?  Laravel怎么使用Intervention Image库处理图片上传和缩放  微信小程序 HTTPS报错整理常见问题及解决方案  Bootstrap CSS布局之列表  如何在 Telegram Web View(iOS)中防止键盘遮挡底部输入框  Laravel怎么清理缓存_Laravel optimize clear命令详解  百度浏览器ai对话怎么关 百度浏览器ai聊天窗口隐藏  标题:Vue + Vuex + JWT 身份认证的正确实践与常见误区解析  Laravel事件和监听器如何实现_Laravel Events & Listeners解耦应用的实战教程