【问题标题】:Starting Spring boot REST controller in two ports在两个端口中启动 Spring Boot REST 控制器
【发布时间】:2019-07-12 05:02:43
【问题描述】:

有没有办法让两个 rest 控制器在一个 spring boot 应用程序的两个不同端口上运行?

例如在一个 SpringBoot 主应用程序中运行在 http://localhost:8080 中的 Controller_A 和在 http://localhost:9090 中运行的 Controller_B ?

【问题讨论】:

    标签: spring spring-boot spring-mvc spring-restcontroller


    【解决方案1】:

    这样做的一种方法实际上是创建两个应用程序属性;

    app-A.properties

    server.port=8080
    

    app-B.properties

    server.port=9090
    

    然后在您的控制器中,添加如下注释;

    @Profile("A")
    public class ControllerA {
       ...
    }
    
    @Profile("B")
    public class ControllerB {
       ...
    }
    

    最后,您需要使用以下设置启动应用程序两次;

    java -jar -Dspring.profiles.active=A awesomeSpringApp.jar
    java -jar -Dspring.profiles.active=B awesomeSpringApp.jar
    

    【讨论】:

    • 我的应用程序不能启动两次。有什么办法吗,我的另一个控制器也可以放在测试文件夹中。
    • 还有很长的路要走,看看这个教程; bit.ly/2SKBYgR
    猜你喜欢
    • 2020-01-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-03-27
    • 2016-09-18
    • 2017-10-21
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多