当前位置: 首页 > wzjs >正文

珠海正规网站制作排名费用多少在线seo外链工具

珠海正规网站制作排名费用多少,在线seo外链工具,企业网银app下载,网络公司 网站源码前言 Autowired 和 Resource 是 Spring 中用于依赖注入的注解,但两者在实现机制和使用方式上有显著差异。 主要区别 1.来源不同 Autowired:由 Spring 框架提供(org.springframework.beans.factory.annotation),与 S…

前言

  • @Autowired 和 Resource 是 Spring 中用于依赖注入的注解,但两者在实现机制和使用方式上有显著差异。

主要区别

1.来源不同

  • @Autowired:由 Spring 框架提供(org.springframework.beans.factory.annotation),与 Spring 强耦合。
  • @Resource:由 JSR-250 规范定义(javax.annotation.Resource),属于 Java 标准,通用性更强。

2.注入方式

默认行为:

  • @Autowired
    • 默认按 类型(byType) 注入。若存在多个同类型 Bean,则按 名称(byName) 匹配。
    • 需配合 @Qualifier 指定名称。
@Autowired
@Qualifier("userServiceA") // 指定 Bean 名称
private UserService userService;
  • @Resource
    • 默认按 名称(byName) 注入 。若未指定名称,则按 类型(byType) 回退。
    • 可通过 name 或 type 属性精确控制。
@Resource(name = "userServiceA") // 显式指定名称
private UserService userService;

3.参数支持

  • @Autowired 仅支持 required 参数,控制是否必须注入(默认为 true):
@Autowired   //@Autowired( required = "true")
@Qualifier("userServiceA") // 指定 Bean 名称
private UserService userService;
  • @Resource 支持 name、type、lookup 等参数,灵活性更高:
@Resource(name = "userServiceA") // 显式指定名称
private UserService userService;

4.注入位置

  • @Autowired:支持更广泛的注入位置
    • 字段
    • 构造器
    • Setter 方法
    • 普通方法
@Autowired
public void setupService(UserService userService) {this.userService = userService;
}
  • @Resource:主要用于字段和 Setter 方法
@Resource
public void setUserService(UserService userService) {this.userService = userService;
}

5.异常处理

  • 无匹配 Bean
    • @Autowired
      (1)若 required = true(默认)且无匹配 Bean,抛出 NoSuchBeanDefinitionException。
      (2)若 required = false,允许注入 null。
    • @Resource
      (1)若未找到指定名称或类型的 Bean,直接抛出 NoSuchBeanDefinitionException。
  • 多匹配 Bean
    • @Autowired
      (1)若存在多个同类型 Bean,需通过 @Qualifier 指定名称,否则抛出 NoUniqueBeanDefinitionException。
    • @Resource
      (2)若未指定 name 且存在多个同类型 Bean,按名称匹配失败后抛出 NoUniqueBeanDefinitionException。

6.代码示例【多个同类型bean】

  • 向IOC容器中通过@Service注解注入两个同类型的bean【均为UserService接口的实现类】
// 定义接口及实现类
public interface UserService { /* ... */ }@Service("userServiceA")
public class UserServiceA implements UserService { /* ... */ }@Service("userServiceB")
public class UserServiceB implements UserService { /* ... */ }
  • @Autowired 解决方案
@Autowired
@Qualifier("userServiceA")
private UserService userService;
  • @Resource 解决方案
@Resource(name = "userServiceA")
private UserService userService;

总结

在这里插入图片描述


使用建议

  • 优先使用 @Autowired:在纯 Spring 项目中,结合 @Qualifier 可满足大多数需求。
  • 选择 @Resource:需要跨框架兼容,或需通过名称精确控制注入时。
http://www.dtcms.com/wzjs/289032.html

相关文章:

  • 东莞专业建站公司费用舆情监测
  • 做app网站的软件叫什么公司网站建设服务
  • 如何把自己做的网站分享给别人用上海企业seo
  • 京东联盟网站怎么做武汉百度seo排名
  • 张家口网站建设广州网络推广平台
  • 书店网站建设策划书百度云搜索引擎入口百度网盘
  • 潍坊网站开发博客网站注册
  • 建立网站的详细步骤图解阿里云注册域名
  • .帮别人做网站seo关键词排名优化联系方式
  • 网站查icp备案查询系统北京网站推广排名
  • 海洋馆的网站怎么做哈尔滨百度公司地址
  • 中山网站建设文化平台夫唯seo教程
  • 大一网站开发项目答辩自建站平台
  • 网站开发平台的定义外贸商城建站
  • 巩义做网站的深圳营销型网站开发
  • wordpress首页分页函数泉州seo网站排名
  • wordpress更改页面图片链接搜索引擎优化培训中心
  • 一般人做不了咨询顾问百度seo搜索
  • 公司网站制作机构独立站seo外链平台
  • 做设计的什么网站能挣钱淘宝关键词优化软件
  • 如果做好招聘网站建设怎么去推广自己的产品
  • 常德网站建下载百度语音导航地图
  • php做网站用框架百度的营销中心上班怎么样
  • 制作企业网站新闻列表页面网页设计ping站长工具
  • 网站建设中企动力推荐微营销官网
  • 日本插画网站有哪些广西壮族自治区免费百度推广
  • 美女和帅哥做私人动作的漫画的网站百度app免费下载
  • 网站和主机有什么不同销售新手怎么找客源
  • 安顺做网站北京seo外包 靠谱
  • 南通云网站建设西安官网seo技术