spring项目无法引入@Resource注解问题[通俗易懂]

spring项目无法引入@Resource注解问题[通俗易懂]问题:在spring项目中引入@Resource注解的时候,有红色下划线错误,而且输入注解的时候不能出现自动代码补全。解决办法:Spring项目中缺少javax.annotation包的依赖。在maven配置文件pom.xml中加入依赖。<!– https://mvnrepository.com/artifact/javax.annotation/javax.annotation…

大家好,又见面了,我是你们的朋友全栈君。

问题:在spring项目中引入@Resource注解的时候,有红色下划线错误,而且输入注解的时候不能出现自动代码补全。

解决办法:Spring项目中缺少javax.annotation包的依赖。在maven配置文件pom.xml中加入依赖。

<!-- https://mvnrepository.com/artifact/javax.annotation/javax.annotation-api -->
<dependency>
    <groupId>javax.annotation</groupId>
    <artifactId>javax.annotation-api</artifactId>
    <version>1.2</version>
</dependency>

1、在spring的配置文件中导入命名空间  
 

  xmlns:context="http://www.springframework.org/schema/context"       

  http://www.springframework.org/schema/context         

 http://www.springframework.org/schema/context/spring-context-2.5.xsd

 2、引入注解解析器  

context:annotation-config></context:annotation-config>

 3、在spring的配置文件中把bean引入进来  

 4、在一个类的属性上加      

 

  @Resource(name="student_annotation")
            private Student student;
         从该注解本身
               @Target({TYPE, FIELD, METHOD})
               @Retention(RUNTIME)
               public @interface Resource {
                  String name() default "";
               }

        1、该注解可以用于属性上或者方法上,但是一般用于属性上 

           2、该注解有一个属性name,默认值为””

   5、分析整个过程

        1、当启动spring容器的时候,spring容器加载了配置文件

        2、在spring配置文件中,只要遇到bean的配置,就会为该bean创建对象

        3、在纳入spring容器的范围内查找所有的bean,看哪些bean的属性或者方法上加有@Resource

        4、找到@Resource注解以后,判断该注解name的属性是否为””(name没有写)

              如果没有写name属性,则会让属性的名称的值和spring中ID的值做匹配,如果匹配成功则赋值

       如果匹配不成功,则会按照类型进行匹配,如果匹配不成功,则报错

       如果有name属性,则会按照name属性的值和spring的bean中ID进行匹配,匹配成功,则赋值,不成功则报错

——————————————————————————————————————————————————————

 

坚持总结工作中遇到的技术问题,坚持记录工作中所思所见。群中可下载相关资料

  spring项目无法引入@Resource注解问题[通俗易懂]spring项目无法引入@Resource注解问题[通俗易懂]

spring项目无法引入@Resource注解问题[通俗易懂]

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/147248.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • Java对象转换Map(工具类)[通俗易懂]

    Java对象转换Map(工具类)[通俗易懂]/***@Description//TODOMap工具类*@Date2020/5/79:54*@Authorhuangwb**/publicclassMapUtils{/***@returnvoid*@Authorhuangwb*@Description//TODO对象转换成map*…

  • css颜色渐变样式怎么用_文本效果内置样式渐变填充

    css颜色渐变样式怎么用_文本效果内置样式渐变填充使用CSS渐变CSS渐变类型的一种特殊类型表示,由两种或多种颜色之间的渐进过渡组成。您可以选择三种类型的渐变:线性(由linear-gradient函数创建),径向(由radial-gradient()函数创建)和圆锥(由conic-gradient(en-US)函数创建)。您还可以使用repeating-linear-gradient和repeating-radial-gradient函数创建重复渐变。渐变可以在任何使用的地方使用,例如在背景中。由于渐变是动态生成

    2022年10月30日
  • 微软面试-微软面试题(5)[通俗易懂]

    微软面试-微软面试题(5)[通俗易懂]微软面试题-头脑  ★如果你有一个许多部件可以拆卸的时钟,你将它一块块拆开,但是没有记住是怎样拆的。然后你将各个零件重新组装起来,最后发现有三个重要零件没有放进去。这时你如何重新组装这个时钟?  ★如果你需要学习一门新的计算机语言,你会怎样做?  ★假设由你负责设计比尔·盖茨的卫生间。当然,钱不成问题,但是你不可以和比尔谈。你会怎样做?  ★到目前为止,你遇到的最难回答的问题是什么?  ★如果微软

  • es6 模板字符串_模板字符串如何实现

    es6 模板字符串_模板字符串如何实现es6的模板字符串个人觉得是很好用的,尤其简化了字符串拼接这块,下面说下它是如何使用的首先,模板字符串是增强版的字符串,使用反引号“来包括字符串,如果需要拼接上变量,那拼接的格式是使用${}包裹变量即可举个例子看下最基本的用法,可以看出来跟普通字符串拼接比较起来简洁容易了很多2:模板字符串的另一优点是,空格和缩进都会保留在输出中,之前的字符串换行的话需要拼接换行符,缩进需要使用缩…

  • 2021年最新PHP 面试、笔试题汇总(二)

    2021年最新PHP 面试、笔试题汇总(二)

  • python将字符串转化为时间_python中的date的含义

    python将字符串转化为时间_python中的date的含义Ihavethisstring:’2012-02-10’#(year-month-day)andIneedittobeasdatetypeformetousethedatefunctionisoweekday().DoesanyoneknowhowIcanconvertthisstringintoadate?解决方案Youcand…

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号