@Resource和@mapper的区别
时间: 2024-06-18 22:00:40 浏览: 10
@Resource和@Mapper都是Spring框架中的注解,它们的作用有所不同。
@Resource注解用于注入对象实例,可以替代@Autowired和@Inject注解。它可以在类级别和字段级别使用,可以通过name属性指定要注入的bean名称,也可以通过type属性指定要注入的bean类型。在Spring中,@Resource注解是JSR-250规范的一部分,与Spring无关。
而@Mapper注解则是Mybatis框架中的注解,主要用于将Mapper接口与XML文件或者SQL语句绑定。在Mybatis中,Mapper接口是一个Java接口,其中定义了各种数据库操作方法,通过@Mapper注解可以将Mapper接口与对应的SQL语句绑定起来,实现数据的CRUD操作。
因此,两者的作用不同,@Resource主要用于注入对象实例,@Mapper则主要用于将Mapper接口与对应的SQL语句绑定。
相关问题
@Mapper与@Resource的区别
@和@Resource是Java中常用的注解,用于现依赖注入和映射。
@Mapper是MyBatis架中的注解,用于标识访问层的接口,通过它可以化数据库操作。@Mapper注解告诉Batis框架自动生成对应接口实现类,无需手动编SQL语句。在MyBatis的配置文件中配置了扫描@Mapper注解的包后,就可以通过@Autowired或@Inject将Mapper接口注入到其他件中使用。
@Resource是JavaEE中的注解,用于实现依注入。它可以通过或类型来自动入对应的Bean对象。当使用名称作为参数时,@Resource会根据名称查对应的Bean进行注入;当使用类型作为参数时,@Resource会根据类型查找对应的Bean进行注入。如果找到多个符合条件的Bean,则需要通过name属性来指定具体的Bean。
总结一下,@Mapper主要用于MyBatis框架中标识数据访问层接口,而@Resource是JavaEE中实现依赖注入的注解。
@Autowired 和@Resource 的区别
@Autowired和@Resource都是用来实现依赖注入的注解。它们之间有以下几个区别:
1. 来源不同:@Autowired来自Spring框架,而@Resource来自Java的JSR-250规范。
2. 依赖查找的顺序不同:@Autowired先按照类型进行匹配,如果找到多个匹配的Bean,则再按照名称进行匹配;而@Resource先按照名称进行匹配,如果找不到名称匹配的Bean,则再按照类型进行匹配。
3. 支持的参数不同:@Autowired只支持设置一个参数,即要注入的Bean的名称或类型;而@Resource支持设置七个参数,包括name、type、shareable、authenticationType、mappedName、description和lookup。
4. 依赖注入的用法支持不同:@Autowired既支持构造方法注入,又支持属性注入和Setter注入;而@Resource只支持属性注入和Setter注入。
5. 编译器提示不同:当注入Mapper对象时,使用@Autowired注解,编译器会提示错误;而使用@Resource注解则不会出错。
相关推荐
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![docx](https://img-home.csdnimg.cn/images/20210720083331.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)