基于java配置启动spring容器
spring容器的启动方式有很多种,基本分两大类,一 是在XML中配置bean的信息,二基本java配置启动spring容器。今天主要介绍一下基本java配置启动spring容器的方式
一、基本XML的配置方式启动spring容器,常见的有两种方式
1、通过BeanFactory的方式启动spring容器
ResourcePatternResolver rpr=new PathMatchingResourcePatternResolver();
Resource resource=rpr.getResource(path);
beanFactory=new XmlBeanFactory(resource);
ac.getBean(beanName);
注:这里的path可以通过通配符的方式加载 classpath:*.xml
2.通过ApplicationContext的方式启动spring容器
ApplicationContext ac=new ClassPathXmlApplicationContext("classpath:*.xml");
ac.getBean(beanName);
二、基本java配置启动spring容器
1、类名需要用@Configuration进行注解。创建AnnotationConfigApplicationContext类,注册用@Configuration注解的类,调用refresh()方法刷新spring容器的注册配置。具体的看代码:
@Configuration
public class Beans {
//喜欢的运动 sport就是spring窗口中bean的名称
@Bean
public List<String> sport(){
List<String> sports=new ArrayList();
sports.add("打蓝球");
sports.add("踢足球");
return sports;
}
//幸运数字 luckyNum就是spring窗口中bean的名称
@Bean
public List<Integer> luckyNum(){
List<Integer> lucky=new ArrayList();
lucky.add(3);
lucky.add(8);
return lucky;
}
//@Test 第一种启动方式
public void test01(){
ApplicationContext ac=new AnnotationConfigApplicationContext(Beans.class);
List<String> sports=(List<String>)ac.getBean("sport");
System.out.println("我喜欢的运动:"+sports);
List<Integer> lucky=(List<Integer>)ac.getBean("luckyNum");
System.out.println("幸运数字:"+lucky);
}
@Test //第二种启动方式
public void test02(){
AnnotationConfigApplicationContext ac=new AnnotationConfigApplicationContext();
//注册一个@Configuration配置类
ac.register(Beans.class);
//刷新容器以应用这些注册的配置类
ac.refresh();
List<String> sports=(List<String>)ac.getBean("sport");
System.out.println("我喜欢的运动:"+sports);
List<Integer> lucky=(List<Integer>)ac.getBean("luckyNum");
System.out.println("幸运数字:"+lucky);
}
}
- 基于纯Java代码的Spring容器和Web容器零配置的思考和实现(3) - 使用配置
- 基于纯Java代码的Spring容器和Web容器零配置的思考和实现(1) - 数据源与事务管理
- Spring核心技术(十二)——基于Java的容器配置(二)
- Spring核心技术(十一)——基于Java的容器配置(一)
- 基于纯Java代码的Spring容器和Web容器零配置的思考和实现(3) - 使用配置
- Spring核心技术(十二)——基于Java的容器配置(二)
- 基于Java的Spring容器配置一(AnnotationConfigApplicationContext实例化Spring容器)
- 基于java的Spring容器配置(二)(@Configuration,@Bean,@Import,@ImportSource)
- 基于纯Java代码的Spring容器和Web容器零配置的思考和实现(2) - 静态资源、视图和消息器
- Spring核心技术(十一)——基于Java的容器配置(一)
- 在独立的环境中通过使用基于 Java 的配置创建和使用Spring 容器
- Web容器启动时加载Spring的配置
- Spring之基于注解的容器配置
- Java Spring Tutorial -- 基于Bean的配置 @Configuration @Bean
- spring基于java的配置
- Spring中基于Java的配置@Configuration和@Bean用法
- java-durid、mybatis、spring 整合基于 AbstractRoutingDataSource 的多数据源读写分离配置
- Spring两个数据源配置在容器启动出错,No unique bean of type [org.springframework.jdbc.core.JdbcTemplate] is defined:
- 随web容器启动Java类,调用spring容器中的的bean及其方法
- spring中基于java的容器注解(12)