创建Spring项目
- IDEA打开New Project-Maven Archetype,选择Archetype:org.apache.maven.archetypes:maven-archetype-quickstart
-
IDEA更换国内源,Maven可以配置aliyun镜像(这里略)
-
添加 Spring 依赖
这里选择当前spring-4的最新版本,也可以选择其它版本(https://mvnrepository.com/artifact/org.springframework/spring-core)
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context</artifactId>
<version>4.3.30.RELEASE</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-beans</artifactId>
<version>4.3.30.RELEASE</version>
</dependency>
运行第一个 Spring 项目
- 这个模板里已经包含了main方法启动类,还需要新建
resources
文件夹
-
新建一个测试学生类
package org.example;
public class Student {
public Student(){ System.out.println("no-args"); } public Student(String arg){ System.out.println(arg); } public void print(String str) { System.out.println(str); }
}
-
将Bean注册到Spring项目上下文
需要在resources
中新建一个XML文件并写入如下代码,文件名可以设为spring-config.xml
<?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:content="http://www.springframework.org/schema/context"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans.xsd
http://www.springframework.org/schema/context
https://www.springframework.org/schema/context/spring-context.xsd">
</beans>
在XML文件中加入bean注册信息:<bean id="student" class="org.example.Student"/>
-
将 Bean 对象从 Spring 上下文中取出来使用,执行run命令。
public static void main( String[] args )
{
System.out.println( "Hello World!" );
// 获取 Spring 的上下文对象
ApplicationContext context = new ClassPathXmlApplicationContext("spring-config.xml");
// 获取 Bean 对象
Student student = (Student) context.getBean("student");
// 使用 Bean 对象
student.print("hello world");
}
查看执行结果
思考
-
Bean类是否有更方便的注册发现方式?
可以采用扫描配置:
<content:component-scan base-package="org.example"/>
-
为什么通过spring管理bean比较好?
解耦。通过spring管理和初始化bean,方便统一使用,避免一点改动多处修改的麻烦。