微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Spring注解使用

声明Bean的注解

  • @Controller

    控制层

  • @Service

    业务层

  • @Repository

    持久化层

    以上三个注解都是@Component的延申,同时也是可以使用这个注解来替代以上三个注解的任意一个,那么为什么还会出现这个三注解。就是因为见名知意

相当于我们xml文件中的bean标签

<beans>
	<bean>
    </bean>
</beans>

注入Bean的注解

  • @Autowired

    根据属性类型自动装配

  • @Qualifier(value ="user0")

    在多个属性类型相同的情况下,我们需要使用该注解去配合@Autowired找到相应的bean对象,那么该注解时根据属性名称自动注入的

  • @Resource

    • 它是javax中的注解,并不是spring中的注解

    • 它是根据类名写去找到对应的bean对象的

      /*
      <bean id="" class="xx.xx.User"></bean>
      
      */
      @Resource(name = "user")
      private User userABC;
      //若name值没有写,则会报错
      
  • @Value

    @Value("张三")
    //可以大概的说等价于
    private String name ="张三";
    

    也就相当于

    <bean id="user02" class="com.dragon.pojo.User">
    	<property name="name" value="张三"/>
    </bean>
    

配置类注解

  • @Configuration

    作用在类上

    声明当前类为配置类

    也就是替代了我们的xml配置文件

  • @Bean

    也是相当于<bean id="" class=""></bean>

    其中id值为方法名,

    class为new出的类名

    @Bean(name = "getString")
    //作用在方法上的
    //返回一个bean对象的
    //<bean id="方法名" class="new String">
    public String getobjecttest(){
        return new String("你好");
    }
    

    记住是注入到了IOC容器中

  • @ComponentScan

    扫描指定路径下Component的组件

    该注解一般作用在配置类中

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