面试官:你用Spring注解@Component开发过哪些项目?

Spring的一个核心功能是IOC,就是将Bean初始化加载到容器中,Bean是如何加载到容器的,可以使用Spring注解方式或者Spring XML配置方式。

Spring注解方式减少了配置文件内容,更加便于管理,并且使用注解可以大大提高了开发效率!

下面按照分类讲解Spring中常用的一些注解。同时也是面试考查时的重点知识!

@Component

1.使用注解需要导入context约束,增加注解的支持!

<?xml version="1.0" encoding="UTF-8"?>

<beans xmlns="http://www.springframework.org/schema/beans"

    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"

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

    xsi:schemaLocation="http://www.springframework.org/schema/beans

        https://www.springframework.org/schema/beans/spring-beans.xsd

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

        https://www.springframework.org/schema/context/spring-context.xsd">

    <context:annotation-config/>

</beans>


2.bean

1.注解

@Component

2.相当于xml

<beanid="user"class="nuc.ss.pojo.User"/>


3.属性如何注入@Value(“xxx”)

1.注解

@Componentpublic class User { @Value("青秧") public String name;}

2.相当于xml

<beanid="user"class="nuc.ss.pojo.User"/> <propertyname="name"value="青秧"/></bean>


4.衍生的注解

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

dao【@Repository】

service 【@Service】

controller 【@Controller】

这四个注解功能都是一样的,都是代表将某个注册类注入到Spring中,装配Bean


5.自动装配置

@Autowired:自动装配通过类型、名字

如果Autowired不能唯一自动装配上属性,则需要通过@Qualifilter(value=“xxx”)

@Nullable:字段标记了这个注解,说明这个字段可以为null

@Resource:自动装配通过名字、类型


6.作用域 @Scope

1.注解

@Component

@Scope("singleton")

public class User {

    public String name;

    @Value("狂神")

    public void setName(String name) {

        this.name = name;

    }

}


2.相当于xml

<beanid="user"class="nuc.ss.pojo.User"scope="singleton"/> <propertyname="name"value="青秧"/></bean>


3.小结

xml与注解

xml更加万能,适用于任何场合!维护简单方便

注解不是自己的类用不了,维护相对复杂

xml与注解的最佳实践:

xml用来管理bean;

注解只负责完成属性的注入;

我们在使用的过程中,只需要注意一个问题:必须让注解生效,就需要开启注解支持

<!--指定要扫描的包,这个包下面的注解就会生效-->

<context:component-scanbase-package="nuc.ss"/>

<context:annotation-config/>

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

dao【@Repository】

service 【@Service】

controller 【@Controller】

这四个注解功能都是一样的,都是代表将某个注册类注入到Spring中,装配Bean

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容