在使用spring boot进行项目启动时,如果需要同时启动2个springboot工程,或者项目中tomcat的默认端口号8080被使用时,就会有问题(如下图所示),会因为8080端口被第一个应用占用而导致第二个应用无法启动,这时就需要修改其中一个工程的启动端口。
这里收集到了两种处理方式:
1. 通过实现EmbeddedServletContainerCustomizer接口来实现:
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.boot.context.embedded.ConfigurableEmbeddedServletContainer;
import org.springframework.boot.context.embedded.EmbeddedServletContainerCustomizer;
import org.springframework.boot.web.support.SpringBootServletInitializer;
import org.springframework.context.annotation.Configuration;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;
@Controller
@SpringBootApplication
@Configuration
public class HelloApplication extends SpringBootServletInitializer implements EmbeddedServletContainerCustomizer {
@RequestMapping("hello")
@ResponseBody
public String hello() {
return "Hello First Spring boot processiong ...";
}
public static void main(String[] args) {
SpringApplication.run(HelloApplication.class, args);
}
@Override
public void customize(ConfigurableEmbeddedServletContainer container) {
// TODO Auto-generated method stub
container.setPort(8010);
}
}
2. 通过修改application.properties配置文件来实现:设置该配置文件中的server.port=8010;
以上方式用于将项目中原有的端口号修改为指定的8010端口号。