Spring Boot: Change Port for Web Application

后端 未结 6 1786
无人共我
无人共我 2021-02-20 08:41

I am currently trying to create a web application with Spring Boot. I need to host my application to localhost:8081. How do I change the port?

相关标签:
6条回答
  • 2021-02-20 09:17

    By default spring boot uses port 8080, BUT you can change the port just by adding the following code line in your main() like this:

    System.getProperties().put( "server.port", *YOUR_PORT_NUMBER_GOES_HERE* );  
    

    e.g

    @SpringBootApplication
    public class MyClass {
    public static void main(String[] args) {
        System.getProperties().put( "server.port", 8181 );  //8181 port is set here
        SpringApplication.run(MyClass.class, args);
    }
    

    OR

    You can configure it in your application.properties file like so:

    server.port=8181
    

    If you DON'T have an application.properties file in your spring-boot application, you can go ahead and create one. Right-click on the src/java/resources folder and go to New-> Other-> General and choose 'File' then name as: application.properties

    Any other configurations you might need are listed here https://docs.spring.io/spring-boot/docs/current/reference/html/common-application-properties.html. These properties are also configured in the application.properties file.

    0 讨论(0)
  • 2021-02-20 09:19

    If you are using the embedded tomcat server, you can configure the EmbeddedServletContainerFactory bean yourself in your Application class annotated with @SpringBootApplication.

    This will give you options to customize your tomcat server, example configuration

    @Bean
    public EmbeddedServletContainerFactory servletContainer() {
        TomcatEmbeddedServletContainerFactory factory = new TomcatEmbeddedServletContainerFactory();
        factory.setPort(9000);
        factory.setSessionTimeout(10, TimeUnit.MINUTES);
        factory.addErrorPages(new ErrorPage(HttpStatus.NOT_FOUND, "/notfound.html"));
        return factory;
    } 
    

    You could also do the same for Jetty, using the JettyEmbeddedServletContainerFactory bean, or for Undertow using the UndertowEmbeddedServletContainerFactory .

    Official documentation found here : http://docs.spring.io/spring-boot/docs/current-SNAPSHOT/reference/htmlsingle/

    0 讨论(0)
  • 2021-02-20 09:21

    In your application.properties file, just add one line

    server.port = 8080
    

    And for more configurations you can refer Spring Boot documentation on port

    0 讨论(0)
  • 2021-02-20 09:33

    If you're using STS, you can do it following below steps:

    • Go to Boot Dashboard view, you'll see your Boot app, say myApp1

    • Right click and click on Open Config. This should open Run Time Configuration section.
    • Go to Argument tab and add parameter server.port=, like in the example below, a custom port 9091 is added.

    • Start the app and if everything is good, you'll see the desired port on Boot dashboard.

    0 讨论(0)
  • 2021-02-20 09:36

    Actually you want to change server.port and you can change it in many different ways as described http://docs.spring.io/spring-boot/docs/current/reference/htmlsingle/#boot-features-external-config

    Examples:

    • in your application.properties (in or outside the jar)
    • command line

      java -Dserver.port=$PORT -jar target/demo-0.0.1-SNAPSHOT.jar

    and much more

    0 讨论(0)
  • 2021-02-20 09:41

    Actually you want to change server.port and you can change it in many different ways as described http://docs.spring.io/spring-boot/docs/current/reference/htmlsingle/#boot-features-external-config

    Put server.port=9000 in your application.properties

    0 讨论(0)
提交回复
热议问题