下面列出了org.springframework.boot.SpringApplication#addPrimarySources ( ) 实例代码,或者点击链接到github查看源代码,也可以在右侧发表评论。
@Setup
public void prepare() {
SpringApplication springApplication = new SpringApplication();
springApplication.addPrimarySources(Collections.singletonList(Application.class));
springApplication.setLazyInitialization(true);
applicationContext = springApplication.run();
this.bookRepository = applicationContext.getBean(BookRepository.class);
this.bookRepository.saveAll(Arrays.asList(
new Book("The Stand", 1000),
new Book("The Shining", 600),
new Book("The Power of the Dog", 500),
new Book("The Border", 700),
new Book("Along Came a Spider", 300),
new Book("Pet Cemetery", 400),
new Book("A Game of Thrones", 900),
new Book("A Clash of Kings", 1100)
));
}
private void findInitializers(SpringApplication application) {
for (Object source : application.getAllSources()) {
if (source instanceof Class<?>) {
Class<?> type = (Class<?>) source;
String cls = type.getName().replace("$", "_") + "Initializer";
if (ClassUtils.isPresent(cls, application.getClassLoader())) {
@SuppressWarnings("unchecked")
Class<? extends ApplicationContextInitializer<?>> initializer = (Class<? extends ApplicationContextInitializer<?>>) ClassUtils
.resolveClassName(cls, application.getClassLoader());
addInitializer(initializer);
remove(application, source);
}
}
}
if (application.getAllSources().isEmpty()) {
// Spring Boot is fussy and doesn't like to run with no sources
application.addPrimarySources(Arrays.asList(Object.class));
}
}
MongoDbFixture() {
SpringApplication application = new SpringApplication();
application.addPrimarySources(Collections.singletonList(MongoDbApplication.class));
application.setAdditionalProfiles("jpa");
application.setLazyInitialization(true);
this.context = application.run();
MongoOperations operations = context.getBean(MongoOperations.class);
operations.dropCollection(Book.class);
IntStream.range(0, Constants.NUMBER_OF_BOOKS) //
.mapToObj(it -> new Book("title" + it, it)) //
.forEach(operations::save);
}
@Setup
public void setup() {
Map<String, Object> neo4jConfig = prepareNeo4j();
SpringApplication springApplication = new SpringApplication();
springApplication.addPrimarySources(Collections.singletonList(Application.class));
springApplication.setLazyInitialization(true);
springApplication.setDefaultProperties(neo4jConfig);
this.applicationContext = springApplication.run();
this.movieRepository = applicationContext.getBean(MovieRepository.class);
this.driver = applicationContext.getBean(Driver.class);
}
@Setup
public void setup() {
Map<String, Object> neo4jConfig = prepareNeo4j();
SpringApplication springApplication = new SpringApplication();
springApplication.addPrimarySources(Collections.singletonList(Application.class));
springApplication.setLazyInitialization(true);
springApplication.setDefaultProperties(neo4jConfig);
this.applicationContext = springApplication.run();
this.movieRepository = applicationContext.getBean(MovieRepository.class);
this.driver = applicationContext.getBean(Driver.class);
}
@Setup
public void setup() {
Map<String, Object> neo4jConfig = prepareNeo4j();
SpringApplication springApplication = new SpringApplication();
springApplication.addPrimarySources(Collections.singletonList(Application.class));
springApplication.setLazyInitialization(true);
springApplication.setDefaultProperties(neo4jConfig);
this.applicationContext = springApplication.run();
this.movieRepository = applicationContext.getBean(MovieRepository.class);
this.driver = applicationContext.getBean(Driver.class);
}
@Setup
public void setup() {
Map<String, Object> neo4jConfig = prepareNeo4j();
SpringApplication springApplication = new SpringApplication();
springApplication.addPrimarySources(Collections.singletonList(Application.class));
springApplication.setLazyInitialization(true);
springApplication.setDefaultProperties(neo4jConfig);
this.applicationContext = springApplication.run();
this.movieRepository = applicationContext.getBean(MovieRepository.class);
this.driver = applicationContext.getBean(SessionFactory.class).unwrap(Driver.class);
}
@Setup
public void prepare() {
SpringApplication springApplication = new SpringApplication();
springApplication.addPrimarySources(Collections.singletonList(Application.class));
springApplication.setLazyInitialization(true);
applicationContext = springApplication.run();
this.bookRepository = applicationContext.getBean(BookRepository.class);
this.bookRepository.saveAll(Arrays.asList(new Book("The Stand", 1000), new Book("The Shining", 600),
new Book("The Power of the Dog", 500), new Book("The Border", 700), new Book("Along Came a Spider", 300),
new Book("Pet Cemetery", 400), new Book("A Game of Thrones", 900), new Book("A Clash of Kings", 1100)));
}
public static ConfigurableApplicationContext createContext(Class<?> configuration, String api, String database) {
SpringApplication application = new SpringApplication();
application.addPrimarySources(Collections.singletonList(configuration));
application.setLazyInitialization(true);
application.setAdditionalProfiles(api, database);
System.out.println("Activating profiles: " + Arrays.asList(api, database).toString());
return application.run();
}
@SuppressWarnings("unchecked")
private void apply(ConfigurableApplicationContext context,
SpringApplication application, ConfigurableEnvironment environment) {
if (application.getAllSources().contains(BootstrapMarkerConfiguration.class)) {
return;
}
application.addPrimarySources(Arrays.asList(BootstrapMarkerConfiguration.class));
@SuppressWarnings("rawtypes")
Set target = new LinkedHashSet<>(application.getInitializers());
target.addAll(
getOrderedBeansOfType(context, ApplicationContextInitializer.class));
application.setInitializers(target);
addBootstrapDecryptInitializer(application);
}