Spring Boot – How to Change Default Tomcat Server Port
In our previous RESTful example, when we start the application Spring Boot’s inbuilt tomcat server by default will take 8080 as its port number, did you observe that go back and have a look once. In this article, I am going to show you how to change that default tomcat’s port number 8080 to something else.
In Spring Boot, we can change tomcat’s port number in 2 ways…
- Using application.properties
- Using Java code change
Firstly, let me show you using application.properties. Consider the previous ‘Creating a RESTful Web Service Example‘, here I just created application.properties file in src/main/resources no other changes.
server.port = 2017
A single line server.port will change the Spring Boot tomcat’s port number, if you run the application the server will takes 2017 as its port number, you can check the port in the console and can execute the application.
Using Java code change
In this approach, we will create a simple java class which implements EmbeddedServletContainerCustomizer interface of Spring Boot, this is a strategy interface for customizing auto-configured embedded servlet containers, and we need to override customize() method of that interface that’s it, let me show you an example.
I have created a java class in com.java4s.app.server package with name Server.java
If you run the application, now the server will consider 2018 as its port number.
Note: If you use both application.properties and Java config, Spring Boot will give preference for Java only, I mean it takes 2018 as its tomcat port number, you can download this example and give a try