Spring的炼气之路(炼气三层)

目录

一、容器的介绍

[1.1 创建容器](#1.1 创建容器)

[1.1.1 类路径下的XML配置文件](#1.1.1 类路径下的XML配置文件)

[1.1.2 文件系统下的XML配置文件](#1.1.2 文件系统下的XML配置文件)

[1.2 获取bean](#1.2 获取bean)

[1.2.1 使用baen名称获取](#1.2.1 使用baen名称获取)

[1.2.2 使用bean名称+指定类型](#1.2.2 使用bean名称+指定类型)

[1.2.3 使用bean类型获取](#1.2.3 使用bean类型获取)

二、注解开发

[1.1 注解开发bean](#1.1 注解开发bean)

[1.2 纯注解开发](#1.2 纯注解开发)

三、注解开发之bean的管理

四、注解开发之自动装配

[4.1 按类型注入bean](#4.1 按类型注入bean)

[4.2 按名称注入bean](#4.2 按名称注入bean)

[4.3 使用@value进行简单类型注入](#4.3 使用@value进行简单类型注入)

[4.4 注解读取properties配置文件](#4.4 注解读取properties配置文件)


前言:Spring炼气之路(炼气二层)-CSDN博客

一、容器的介绍

1.1 创建容器

创建容器有两种方式,类路径下的XML配置文件和文件系统下的XML配置文件

1.1.1 类路径下的XML配置文件

java 复制代码
ApplicationContext actx = new ClassPathXmlApplicationContext("applicationContext.xml");

1.1.2 文件系统下的XML配置文件

java 复制代码
ApplicationContext ctx = new FileSystemXmlApplicationContext("applicationContext.xml文件的绝对路径");

1.2 获取bean

bean的三种获取方式

1.2.1 使用baen名称获取

java 复制代码
 BookDao bookDao = (BookDao) actx.getBean("bookDao");

1.2.2 使用bean名称+指定类型

java 复制代码
BookDao bookDao = actx.getBean("bookDao",BookDao.class);

1.2.3 使用bean类型获取

java 复制代码
BookDao bookDao = actx.getBean(BookDao.class);

二、注解开发

1.1 注解开发bean

第一步:在需要注解的类上加上@Component

java 复制代码
@Component("bookDao")
public class BookDaoImpl implements BookDao {}

第二步:在applicationContext.xml配置文件中进行包扫描

html 复制代码
<context:component-scan base-package="com.zhang.dao.impl" />

注: 对于@Component注解,还衍生出了其他三个注解

表现层: @Controller

业务层 @Service

数据层 : @Repository

1.2 纯注解开发

使用Java类替代配置文件

步骤:

①第一步:创建配置java类

java 复制代码
public class SpringConfig {}

②第二步:添加@Configuration注解替换applicationContext.xml,表示这是一个配置类

java 复制代码
@Configuration
public class SpringConfig {}

③第三步:在配置类上添加包扫描注解@ComponentScan

java 复制代码
@Configuration
@ComponentScan("com.zhang")
public class SpringConfig {}

在这种模式下,如何初始化容器?

java 复制代码
//加载配置类初始化容器
ApplicationContext ctx = new AnnotationConfigApplicationContext(SpringConfig.class);

三、注解开发之bean的管理

3.1 bean的作用范围注解

@Scope设置bean的作用范围

3.2 bean的生命周期注解

@PostConstruct初始化方法

@PreDestroy 销毁方法

四、注解开发之自动装配

4.1 按类型注入bean

使用@Autowired **(按类型注入)**注解

注: @Autowired可以写在属性上,也可也写在setter方法上。

4.2 按名称注入bean

使用@Autowired+@Qualifier 注解

注: @Qualifier不能独立使用,必须和@Autowired一起使用

4.3 使用@value进行简单类型注入

java 复制代码
@Value("zhang")
private String name;

4.4 注解读取properties****配置文件

**①:**在配置类上添加@PropertySource注解

②:通过${ } 读取properties配置文件的简单类型数据

java 复制代码
@Value("${name}")
相关推荐
xcl09253 小时前
北京24小时自助健身房系统软件开发实战:从架构到部署全流程指南
java·spring boot·架构
一 乐5 小时前
动漫书销售商城|基于springboot + vue动漫书销售商城(源码+数据库+文档)
java·数据库·vue.js·spring boot·毕业设计
卓怡学长5 小时前
w214基于jsp知道特产网
java·intellij-idea
步行cgn5 小时前
Spring 注解使用详解
java·spring
一条小小yu6 小时前
Spring IoC的理解
java·后端·spring
落魄实习生6 小时前
Agent Scope Java 2.x 系列【7】工具使用
java·开发语言·ai
旺仔学长 哈哈6 小时前
springboot钓鱼爱好者交流平台APP设计与实现
java·spring boot·mysql·充电桩管理系统
自强的小白8 小时前
核心功能(Service接口)
java·mybatis
乌暮9 小时前
深入理解 Java 泛型:把「万能盒子」用对、用稳
java·开发语言·后端·学习