接下来使⽤ Maven ⽅式来创建⼀个 Spring 项⽬,创建 Spring 项⽬和 Servlet 类似,总共分为以下 3步
最后在创建好的项⽬ java ⽂件夹下创建⼀个启动类,包含 main ⽅法即可
public class App {
public static void main(String[] args) {
}
}
存储 Bean 分为以下 2 步
所谓的 Bean 就是 Java 语⾔中的⼀个普通对象,实现代码如下
public class Student {
public Student(){
System.out.println("init Student");
}
public void Sayhi(){
System.out.println("hello spring");
}
}
在创建好的项⽬中添加 Spring 配置⽂件 spring-config.xml,将此⽂件放到 resources 的根⽬录下,如下图所示
Spring 配置⽂件的固定格式为以下内容
<?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>
接下来,再将 User 对象注册到 Spring 中就可以,具体操作是在 中添加如下配置
<bean id="student" class="Student"></bean>
获取并使⽤ Bean 对象,分为以下 3 步
Spring 上下⽂对象可使⽤ ApplicationContext,实现代码如下
//得到 Spring 的上下⽂对象,创建的时候需要配置 Spring 配置信息
ApplicationContext context=new ClassPathXmlApplicationContext("spring-config.xml");
除了 ApplicationContext 之外,我们还可以使⽤ BeanFactory 来作为 Spring 的上下⽂,如下代码所示
BeanFactory beanFactory=new XmlBeanFactory(new ClassPathResource("spring-config.xml"));
ApplicationContext 和 BeanFactory 效果是⼀样的,ApplicationContext 属于 BeanFactory 的⼦类,它们的区别如下
Student student=(Student) context.getBean("student");
getBean() ⽅法有很多种重载⽅法,我们也可以使⽤其他⽅式来获取 Bean 对象,⽐如以下这两种:根据类型获取 Bean:
Student student=context.getBean(Student.class);
名称 + 类型获取 Bean:
Student student=context.getBean("student",Student.class);
public class App {
public static void main(String[] args) {
//获取spring对象
ApplicationContext context=new ClassPathXmlApplicationContext("spring-config.xml");
//获取bean
Student student=context.getBean("student",Student.class);//名称+类型
//使用bean
student.Sayhi();
}
}