- 通过@SpringBootApplication加载配置文件,构建spring上下文环境
核心 : 构建 ApplicationContext , 然后通过 ApplicationContext 获取bean
@SpringBootApplication(scanbasePackages ={ "com.pachira.xkz.hh" }) public class Mainhh { public static void main(String[] args) throws InterruptedException { ApplicationContext context = SpringApplication.run(Mainhh.class, args); SpringManager manager = context.getBean(SpringManager.class); for(int i=0;i<1000;i++) { ArchiveNode node = new ArchiveNode(); node.setName(" " + i ); System.out.println(node.toString()); manager.doIt(node); } System.out.println("执行成功"); } } -
通过 AnnotationConfigApplicationContext,和spring环境文件springConfig 配置 ApplicationContext
SpringConfig.java 配置spring环境
package com.pachira.xkz.hh;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.ComponentScan;
import org.springframework.context.annotation.Configuration;
import org.springframework.context.support.PropertySourcesPlaceholderConfigurer;
import org.springframework.core.io.FileSystemResource;
@Configuration
@ComponentScan(basePackages = {
"com.pachira.xkz.hh"
})
public class SpringConfig {
@Bean
public static PropertySourcesPlaceholderConfigurer createPlaceHolderCOnfigure() {
return new PropertySourcesPlaceholderConfigurer();
}
@Bean
public SpringManager getManager() {
return new SpringManager();
}
@Bean
public ArchiveDisPactcher getDispatcher() {
return new ArchiveDisPactcher();
}
//有配置文件的情况 SpringConfig要有Path属性用来设置配置文件
//
// @Bean
// public static PropertySourcesPlaceholderConfigurer createPlaceholderConfigurer() {
// PropertySourcesPlaceholderConfigurer configurer =
// new PropertySourcesPlaceholderConfigurer();
// configurer.setLocation(new FileSystemResource(configPath));
// configurer.setFileEncoding("UTF-8");
// return configurer;
// }
}
public static void main(String[] args) {
ApplicationContext context = new AnnotationConfigApplicationContext(SpringConfig.class);
SpringManager manager = context.getBean(SpringManager.class);
for(int i=0;i<1000;i++) {
ArchiveNode node = new ArchiveNode();
node.setName("** " + i);
manager.doIt(node);
}
System.out.println("执行成功");
}



