Springboot 配置项目 端口号 和 项目根 路径 您所在的位置:网站首页 10010端口是干嘛的 Springboot 配置项目 端口号 和 项目根 路径

Springboot 配置项目 端口号 和 项目根 路径

2023-07-30 06:50| 来源: 网络整理| 查看: 265

Springboot 项目默认端口是8080,可以在启动的时候从打印日志中查看:

因此,创建SpringBoot项目,启动后,默认的访问路径即主机IP+默认端口号8080:http://localhost:8080/

如果想使用其他端口, 需要进行额外配置:

方式一  修改配置文件

配置文件有两种,一种是application.properties, 一种为application.yml。

使用properties文件方式:

修改src目录下main目录下resources目录下的application.properties文件,如果没有需要创建。

#端口号 server.port = 8888 #项目名,如果不设定,默认是 / server.servlet.context-path : /demo

使用yml文件方式:

修改src目录下main目录下resources目录下的application.yml文件,如果没有需要创建。(相同的头就直接前面空三格子即可,这样就将一些同类型的配置放一块了,比起properties更简单)

server: #端口号 port: 8888 #项目名,如果不设定,默认是 / servlet: context-path: /demo

其中port属性可以配置端口,context-path属性配置项目根路径。

说明:

1.项目根路径:通常可以设置项目名,如果不设定,默认是 /

按照上述设置为demo后,最后项目实际的访问路径为:http://127.0.0.1:8888/demo

例如:

import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; @RestController public class Hello { @RequestMapping("/hello") public String hello(){ return "Hello World!"; } }

 感觉设置根路径主要是为了防止其他人通过ip就能直接访问项目。

2. 项目根路径的设置原来可以直接放在server项下面,Spring Boot 2.0 开始要求放在servlet项下面。

# 老版本 server.context-path=/myprojectname # 新版本 server.servlet.context-path=/myprojectname   方式二  添加代码 可以实现动态配置(读取数据库等)

在Application.java文件(启动入口)中加入以下代码,其中 factory.setPort(8888); 设置了端口号为8888,可以在代码中动态调整。

@Bean public WebServerFactoryCustomizer webServerFactoryCustomizer(){ return new WebServerFactoryCustomizer() { @Override public void customize(ConfigurableWebServerFactory factory) { factory.setPort(8888); } }; }

说明:代码设置原先使用重写EmbeddedServletContainerCustomizer类的方式进行,Spring Boot2.0以上配置嵌入式Servlet容器时EmbeddedServletContainerCustomizer类被WebServerFactoryCustomizer替代。

Spring Boot2.0以前版本可使用:

package com.yellowcong.controller; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.boot.builder.SpringApplicationBuilder; import org.springframework.boot.context.embedded.ConfigurableEmbeddedServletContainer; import org.springframework.boot.context.embedded.EmbeddedServletContainerCustomizer; import org.springframework.boot.web.support.SpringBootServletInitializer; @SpringBootApplication public class ConfigMain extends SpringBootServletInitializer implements EmbeddedServletContainerCustomizer { @Override protected SpringApplicationBuilder configure(SpringApplicationBuilder builder) { return builder.sources(ConfigMain.class); } public static void main(String[] args) { SpringApplication.run(ConfigMain.class, args); } @Override public void customize(ConfigurableEmbeddedServletContainer container) { //指定项目名称 container.setContextPath("/demo"); //指定端口地址 container.setPort(8888); } }

 

参考

1. https://blog.csdn.net/u011517841/article/details/85001908

2. https://blog.csdn.net/yelllowcong/article/details/79216889

3. https://www.jb51.net/article/153735.htm https://jingyan.baidu.com/article/63f23628cc5ab64209ab3d1d.html

4. https://blog.csdn.net/qq_41722101/article/details/98488568

5. https://blog.csdn.net/Javaer_dog/article/details/83153613

 

 



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有