


<dependencies>
<dependency>
<groupId>org.springframeworkgroupId>
<artifactId>spring-contextartifactId>
<version>5.2.3.RELEASEversion>
dependency>
<dependency>
<groupId>org.springframeworkgroupId>
<artifactId>spring-beansartifactId>
<version>5.2.3.RELEASEversion>
dependency>
dependencies>
在Java目录下添加,启动类的名字不固定,注意使用大驼峰



<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd">
<bean id="user" class="com.myclass.User">bean>
beans>
获取并使⽤ Bean 对象,分为以下 3 步:
public class App {
public static void main(String[] args) {
//1.获取Spring上下文对象
ApplicationContext context = new ClassPathXmlApplicationContext("spring-config.xml");
//2.获取某个bean对象
User user = (User)context.getBean("user");
//3.使用bean对象
user.sayHi();
}
}
ApplicationContext context = new ClassPathXmlApplicationContext("spring-config.xml");
BeanFactory factory = new XmlBeanFactory(new ClassPathResource("spring-config.xml"));
ApplicationContext 和 BeanFactory 的效果是一样的,ApplicationContext 属于是 BeanFactory 的子类,他们有如下区别:
User user = (User)context.getBean("user");
User user = context.getBean(User.class);
User user = context.getBean("user", User.class);
注意:

当一个类被注册到Spring中两次时,就不能使用第二种方式了,因为通过User.class是不能确定是两个对象中的哪一个。
因此建议使用第三种方式来获取类。

- 创建一个普通的maven项目
- 引入Spring相关的依赖
- 添加启动类
- 创建Bean对象
- 将创建好的对象注册到Spring容器中
- 获取Spring上下文
- 获取指定bean对象
- 使用Bean对象