博客
关于我
@Resource和@Autowired区别
阅读量:724 次
发布时间:2019-03-21

本文共 505 字,大约阅读时间需要 1 分钟。

经过单元测试发现,在使用Spring注解时,若未在类字段上加上

@Autowired

注解,可能会导致用户对象无法被正确注入,出现。这让我对Spring的注解方式产生了更深的兴趣。

通过查阅资料,我了解到了Sprign的两个常见注解:@Resource和@Autowired。虽然它们都用于依赖注入,但两者在具体使用上存在显著差异。

@Resource注解的装配方式是按名称进行的,这意味着需要确保注入的目标对象属性名称与注解的值完全一致。而@Autowired注解则是基于类型进行装配,这种方法更加灵活且不易出错,因为只需要保证注入的对象类型与当前对象一致即可。

考虑到这些区别,当我们需要进行类型安全的注入时,@Autowired是一种更优选择。而@Resource注解则适合在已知注入单元名称的情况下使用,尤其是在经典的基于XML的配置文件中。

此外,在实际应用中,我们也需要结合具体的注解配置文件来判断选择哪种注解方式更加合适。不同的场景可能会有不同的最佳实践,例如在使用接口定义的时候,@Autowired可能会更加省力。无论哪种方式,最重要的是理解它们的原理,这样才能更好地进行对象的实例化和管理。

转载地址:http://zdjgz.baihongyu.com/

你可能感兴趣的文章
mysql创建数据库和用户 并授权
查看>>
mysql创建数据库指定字符集
查看>>
MySql创建数据表
查看>>
MySQL创建新用户以及ERROR 1396 (HY000)问题解决
查看>>
MySQL创建用户与授权
查看>>
MySQL创建用户报错:ERROR 1396 (HY000): Operation CREATE USER failed for 'slave'@'%'
查看>>
MySQL创建索引时提示“Specified key was too long; max key length is 767 bytes”
查看>>
mysql初始密码错误问题
查看>>
mysql判断某一张表是否存在的sql语句以及方法
查看>>
mysql加入安装策略_一键安装mysql5.7及密码策略修改方法
查看>>
mysql加强(1)~用户权限介绍、分别使用客户端工具和命令来创建用户和分配权限
查看>>
mysql加强(3)~分组(统计)查询
查看>>
mysql加强(4)~多表查询:笛卡尔积、消除笛卡尔积操作(等值、非等值连接),内连接(隐式连接、显示连接)、外连接、自连接
查看>>
mysql加强(5)~DML 增删改操作和 DQL 查询操作
查看>>
mysql加强(6)~子查询简单介绍、子查询分类
查看>>
mysql加强(7)~事务、事务并发、解决事务并发的方法
查看>>
mysql千万级大数据SQL查询优化
查看>>
MySQL千万级大表优化策略
查看>>
MySQL单实例或多实例启动脚本
查看>>
MySQL压缩包方式安装,傻瓜式教学
查看>>