我是靠谱客的博主 多情网络,这篇文章主要介绍JAVAEE框架之Spring新注解五.Spring5 新注解,现在分享给大家,希望可以做个参考。

五.Spring5 新注解

​ 新的注解有用,为后面的SpringBoot可以打一个基础,因为到SpringBoot的课程, 多了很多注解。这时候,先了解一部分。

5.1 @Configuration

@Configuration主要是用来定义配置类,可用于代替xml配置文件,比如之前设置的beans.xml

5.2 @ComponentScan

该注解默认会扫描该类所在的包下所有的配置类,相当于之前的 context:component-scan

5.3 @Bean

​ @Bean是一个方法级别上的注解,主要用在@Configuration注解的类里,也可以用在@Component注解的类里。如果不写,则默认的是添加的bean的id为方法名。

@Bean(value=“id值”)

复制代码
1
2
3
4
5
6
7
8
9
@Configuration public class SpringConfig { @Bean(value = "dog") public Dog getDog(){ return new Dog("京东狗",6.18); } }

5.4 AnnotationConfigApplicationContex

使用AnnotationConfigApplicationContext可以实现基于Java的配置类加载Spring的应用上下文。避免使用application.xml进行配置。相比XML配置,更加便捷。

复制代码
1
2
3
4
ApplicationContext ac=new AnnotationConfigApplicationContext(SpringConfig.class); Dog dog= (Dog) ac.getBean("dog"); System.out.println(dog.toString());

5.5 Import

  • 用到的Bean导入到容器

    复制代码
    1
    2
    3
    4
    5
    6
    7
    @Import(value = {Dog.class,Cat.class}) //测试类: ApplicationContext ac=new AnnotationConfigApplicationContext(SpringConfig.class); Dog dog= (Dog) ac.getBean(Dog.class); System.out.println(dog.toString());
  • 导入另外一个配置类

​ 相当于<import resource=“lasspath:xxx.xml”/>

5.6 PropertySource

​ 注解用于指定资源文件读取的位置,它不仅能读取properties文件,也能读取xml文件,并且通过YAML解析器,配合自定义PropertySourceFactory实现解析YAML文件。

​ 相当于xml文件里面的:

复制代码
1
2
<context:property-placeholder location="classpath:/hibernate.properties" />

加了:druid的配置类

pom.xml

复制代码
1
2
3
4
5
6
<dependency> <groupId>com.alibaba</groupId> <artifactId>druid</artifactId> <version>1.1.9</version> </dependency>
复制代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
package com.aaa.config; import com.alibaba.druid.pool.DruidDataSource; import org.springframework.beans.factory.annotation.Value; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; import org.springframework.context.annotation.PropertySource; /** * Created by 张晨光 on 2020/6/18 9:26 */ @Configuration @PropertySource("classpath:/druid.properties") public class JdbcConfig { @Value("${driverClassName}") private String driverClassName; @Value("${url}") private String url; @Value("${username}") private String username; @Value("${password}") private String password; /*@Override public String toString() { return "JdbcConfig{" + "driverClassName='" + driverClassName + ''' + ", url='" + url + ''' + ", username='" + username + ''' + ", password='" + password + ''' + '}'; }*/ //注册Druid数据源连接池 @Bean public DruidDataSource druidDataSource(){ // System.out.println("driverClassName====> " + driverClassName); // System.out.println("url====> " + url); // System.out.println("username====> " + username); // System.out.println("username====> " + username); DruidDataSource druidDataSource = new DruidDataSource(); druidDataSource.setDriverClassName(driverClassName); druidDataSource.setUrl(url); druidDataSource.setUsername(username); druidDataSource.setPassword(password); return druidDataSource; } }

测试 类:

复制代码
1
2
3
4
5
6
7
@org.junit.Test public void testTwo(){ ApplicationContext ac= new AnnotationConfigApplicationContext(SpringConfig.class); DruidDataSource druidDataSource= (DruidDataSource) ac.getBean("druidDataSource"); System.out.println(druidDataSource); }

回顾:

1.建立了两个配置类:SpringConfig、JdbcConfig

2.第一个配置类主要测试的注解有:@Configuration @ComponentScan @Bean @Import

3.第二个配置类主要测试的注解有:@PropertySrouce,主要再次来测试一下,从外部来获取配置文件;

4.都用到了AnnotationConfigApplicationContext类。


> " + driverClassName);
// System.out.println("url
==> " + url);
// System.out.println("username====> " + username);
// System.out.println("username====> " + username);
DruidDataSource druidDataSource = new DruidDataSource();
druidDataSource.setDriverClassName(driverClassName);
druidDataSource.setUrl(url);
druidDataSource.setUsername(username);
druidDataSource.setPassword(password);
return druidDataSource;
}

}

复制代码
1
2
3
4
5
6
7
8
9
10
11
测试 类: ```java @org.junit.Test public void testTwo(){ ApplicationContext ac= new AnnotationConfigApplicationContext(SpringConfig.class); DruidDataSource druidDataSource= (DruidDataSource) ac.getBean("druidDataSource"); System.out.println(druidDataSource); }

回顾:

1.建立了两个配置类:SpringConfig、JdbcConfig

2.第一个配置类主要测试的注解有:@Configuration @ComponentScan @Bean @Import

3.第二个配置类主要测试的注解有:@PropertySrouce,主要再次来测试一下,从外部来获取配置文件;

4.都用到了AnnotationConfigApplicationContext类。


如果你不习惯于用注解,那么可以先使用配置文件来,只要达成效果即可,理解即可。

最后

以上就是多情网络最近收集整理的关于JAVAEE框架之Spring新注解五.Spring5 新注解的全部内容,更多相关JAVAEE框架之Spring新注解五.Spring5内容请搜索靠谱客的其他文章。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(79)

评论列表共有 0 条评论

立即
投稿
返回
顶部