一尘不染

将现有的spring应用程序迁移到spring-boot,手动配置spring-boot?

spring-boot

我有一个现有的spring 3.1.4应用程序,可以正常运行并可以正常启动。我目前在自己的主类中手动启动spring上下文。这不是spring-
mvc应用程序,它不包含任何servlet,web.xml或生成WAR。它只是为集成后端生成一个JAR。

我想“包装”这个遗留应用程序并通过spring-boot启动它。但是,由于所有示例似乎都假设创建了一个“新”应用程序,因此我很难弄清楚该如何做。

1)我有我现有的applicationContext.xml文件,其中有我现有的spring app bean声明

2)为了启动带有tomcat的spring-boot并将我所有的现有bean加载到spring-boot包装的上下文中,我需要添加到现有的Spring
applicationContext.xml文件中的新bean配置的最小集合是什么?

有人能指出我正确的方向吗?


阅读 335

收藏
2020-05-30

共1个答案

一尘不染

Spring Boot参考指南中有一章致力于将现有应用程序转换为Spring Boot

基本上,您需要添加Spring Boot依赖项,然后像这样实现主入口点:

@SpringBootApplication
@ImportResource("classpath:applicationContext.xml")
public class MySpringBootApplication {
    public static void main(String[] args) {
        SpringApplication.run(MySpringBootApplication.class, args);
    }
}

但是,这还将基于其他可用类和已配置的bean触发Spring
Boot的自动配置。您可能要禁用某些自动配置。要排除DataSource和Hibernate JPA自动配置,请使用:

@SpringBootApplication(exclude = { DataSourceAutoConfiguration.class, HibernateJpaAutoConfiguration.class })
2020-05-30