1,Commponent
@component是spring中的一个注解,它的作用就是实现bean的注入,@component取代。在探究@component前先了解一下注解?何为注解?注解本质上就是一个类,开发中我们可以使用注解 取代 xml配置文件。
2,@Service 通常作用在业务层,但是目前该功能与 @Component 相同。
3,@Constroller 通常作用在控制层,但是目前该功能与 @Component 相同。
4,@Repository注解便属于最先引入的一批,它用于将数据访问层 (DAO 层 ) 的类标识为 Spring Bean。具体只需将该注解标注在 DAO类上即可。同时,为了让 Spring 能够扫描类路径中的类并识别出 @Repository 注解,需要在 XML 配置文件中启用Bean 的自动扫描功能,这可以通过context:component-scan/实现
5,@Autowired 注释,它可以对类成员变量、方法及构造函数进行标注,完成自动装配的工作。 通过
@Autowired的使用来消除 set ,get方法。
6,@Qualifier注解了,qualifier的意思是合格者,通过这个标示,表明了哪个实现类才是我们所需要的,我们修改调用代码,添加@Qualifier注解,需要注意的是@Qualifier的参数名称必须为我们之前定义@Service注解的名称之一
7,@Value注解作用的两种方式
第一种方式@Value("${}"):在使用Springboot项目搭建的项目时,配置文件application.properties中
已经被加载到了项目中,在项目中可以通过该注解获取配置文件中的信息
第二种方式@Value("#{}"):两种的注解区别在值上的区别为:
@Value的值有两类:
① KaTeX parse error: Expected 'EOF', got '#' at position 36: …_value } ② #̲{ obj.property?…{}")是直接根据配置文件中的属性获取信息
8,@Scope,也称作用域,在Soring Ioc容器指其创建的Bean对象对其他Bean对象的请求可见范围,在Spring IoC 容器中具有以下几种作用域,基本作用域(singleton,prototype),web作用域(request,session,globalsession),自定义作用域
9,@PostConstruct 当前类的构造 >> @Autowired >> @PostConstruct 执行顺序从左至右以此。 所以当如果某方法依赖于@Autowired或者希望比其晚,那么可以使用@PostConstruct注解。
上述为比较老式的一些注解也有一些新加入的注解
10,@Configuration用于定义配置类,可替换xml配置文件,被注解的类内部包含有一个或多个被@Bean注解的方法,这些方法将会被AnnotationConfigApplicationContext或AnnotationConfigWebApplicationContext类进行扫描,并用于构建bean定义,初始化Spring容器。
11,@ComponentScan主要就是定义扫描的路径从中找出标识了需要装配的类自动装配到spring的bean容器中
12,@Bean是一个方法级别上的注解,主要用在@Configuration注解的类里,也可以用在@Component注解的类里。添加的bean的id为方法名
13,@import在应用中,有时没有把某个类注入到IOC容器中,但在运用的时候需要获取该类对应的bean,此时就需要用到@Import注解。
14,@PropertySource用于引入外部属性配置