Spring 使用注解发开

属性的注入

@Component扫描到bean中,组件的意思,会用在实体类或者映射类上
@Autowired,将已经在bean中的类,引用

    @Component
    //@Component  组件
    //等价于<bean id="User" class="com.liu.pojo.User"/>
public class User {
    @Value("小明")
    //相当于注入<property name="name" value="小明"/>
    public String name;

衍生的注解

@Component有几个衍生注解,我们在web开发中,会按照mvc三层架构分层!

  • dao 【@Repository】
  • service [@service】
  • controller 【@controller】
    这四个注解功能都是一样的,都是代表将某个类注册到Spring中,装配Bean

自动装配

1、@Autowired

由Spring提供,只按照byType注入

2、@Resource

由J2EE提供,默认按照byName自动注入
3、@Autowired是Spring的,@Resource是javax包下的。

- @Autowired 自动装配通过bean,通过类型

-->需要bean里面的类型为唯一,否则需要和@Qualifier(value="xxx")一起使用
- @resource  自动装配通过bean,通过名字。找不到再通过类型
- @Nullable 字段标记了这个注解,说明该字段可以为空;

作用域

放在类上面

@Scope("singleton")

小结

xml与注解:

  • xml更加万能,适用于任何场合!维护简单方便。
  • 注解不是自己类使用不了,维护相对复杂!

xml 与注解最佳实践:

  • xml 用来管理bean;
  • 注解只负责完成属性的注入;
  • 我们在使用的过程中,只需要注意一个问题:必须让注解生效,就需要开启注解的支持
    <!--指定要扫描的包,这个包下的注解就会生效-->
    <context:component-scan base-package="com.liu"/>
    <!--开启注解的支持-->
    <context:annotation-config/>
posted @   小幼虫虫  阅读(66)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· .NET10 - 预览版1新功能体验(一)
点击右上角即可分享
微信分享提示