Springboot如何添加server.servlet.context-path相关使用

 更新时间:2023年03月01日 16:57:34   作者:专注写bug  
这篇文章主要介绍了Springboot如何添加server.servlet.context-path相关使用问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教

Springboot添加server.servlet.context-path

server.servlet.context-path配置的作用

定义: server.servlet.context-path= # Context path of the application. 应用的上下文路径,也可以称为项目路径,是构成url地址的一部分。

  • server.servlet.context-path不配置时,默认为 / ,如:localhost:8080/xxxxxx
  • 当server.servlet.context-path有配置时,比如 /demo,此时的访问方式为localhost:8080/demo/xxxxxx

springboot 2.0变革后的配置区别

1、springboot 2.0之前,配置为 server.context-path

2、springboot 2.0之后,配置为 server.servlet.context-path

一个思考

原来的运营项目(已上线),配置文件添加 server.servlet.context-path 配置后,需要在thymleaf 中进行action请求的追加吗?

答案:不需要。

栗子:

前端页面采取form请求

<form th:action="@{/user/userLogin}" method="post" id="userLogin"></form>

action拦截接受方式

@Controller
@RequestMapping("/user")
public class LoginController {
 
@PostMapping("/userLogin")
public String userLogin(HttpServletRequest request, Model model) {
    

原项目的基础上,追加一个配置

server:  port: 8080  servlet:    context-path: /demo

只需要再开始进入首页时,追加 localhost:8080/demo ,后续的thymleaf中的href和action等无需添加/demo 。

Springboot配置 server.servlet-path 和 server.context-path

server.context-path

设定应用的context-path.

根据 springboot版本context-path不同

  • 如果是springboot2.0以下,用配置​server.context-path=/demo
  • 如果是springboot2.0以上,用配置​server.servlet.context-path=/demo

server.servlet-path

  • 设定dispatcher servlet的监听路径,默认为: /

示例

  • 如果配置了server.servlet-path = /demo,访问路径就是http://ip:port/demo/...
  • 不配置或server.servlet-path = /,访问路径就是http://ip:port/...

小拓展:

1.只配置了server.servlet-path = /demo,访问路径是http://ip:port/demo/...

2.如果使用的idea,只在Tomcat配置了 Application context了,访问路径是http://ip:port/test/...

3.如果使用的idea,已经在Tomcat配置了 Application context了(下图),也配置了server.servlet-path = /demo,访问路径是http://ip:port/test/demo/...

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • 重新启动IDEA时maven项目SSM框架文件变色所有@注解失效

    重新启动IDEA时maven项目SSM框架文件变色所有@注解失效

    这篇文章主要介绍了重新启动IDEA时maven项目SSM框架文件变色所有@注解失效,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-03-03
  • 如何解决Could not transfer artifact org.springframework.boot问题

    如何解决Could not transfer artifact org.spri

    在Maven更新过程中遇到“Could not transfer artifact org.springframework.boot”错误通常是由于网络问题,解决方法是在Maven的设置中忽略HTTPS,添加特定语句后,可以正常下载依赖,但下载速度可能较慢,这是一种常见的解决方案,希望对遇到相同问题的人有所帮助
    2024-09-09
  • Spring使用ThreadPoolTaskExecutor自定义线程池及异步调用方式

    Spring使用ThreadPoolTaskExecutor自定义线程池及异步调用方式

    这篇文章主要介绍了Spring使用ThreadPoolTaskExecutor自定义线程池及异步调用方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-02-02
  • Java中的服务发现与负载均衡及Eureka与Ribbon的应用小结

    Java中的服务发现与负载均衡及Eureka与Ribbon的应用小结

    这篇文章主要介绍了Java中的服务发现与负载均衡:Eureka与Ribbon的应用,通过使用Eureka和Ribbon,我们可以在Java项目中实现高效的服务发现和负载均衡,需要的朋友可以参考下
    2024-08-08
  • mybatis如何返回某列的最大值

    mybatis如何返回某列的最大值

    这篇文章主要介绍了mybatis如何返回某列的最大值操作,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-07-07
  • Java采用循环链表结构求解约瑟夫问题

    Java采用循环链表结构求解约瑟夫问题

    这篇文章主要介绍了Java采用循环链表结构求解约瑟夫问题的解决方法,是很多Java面试环节都会遇到的经典考题,这里详细给出了约瑟夫问题的原理及Java解决方法,是非常经典的应用实例,具有一定的参考借鉴价值,需要的朋友可以参考下
    2014-12-12
  • java判断空的实现方法

    java判断空的实现方法

    字符串判断空有两种情况:一个是分配了内存但值为空(""),另一个是未分配内存(null),判断方法包括isEmpty()和isBlank(),其中isBlank()还可以过滤空格、制表符,对于列表,判断不为空可以使用list!=null && !list.isEmpty()或list!=null && list.size()>0
    2024-09-09
  • Spring Boot 配置文件类型properties 格式与yml 格式

    Spring Boot 配置文件类型properties 格式与yml 格式

    这篇文章主要介绍了Spring Boot 配置文件类型properties 格式与yml 格式,文章围绕主题展开详细内容,具有一定的参考价值,需要的小伙伴可以参考一下
    2022-05-05
  • SpringBoot 创建容器的实现

    SpringBoot 创建容器的实现

    这篇文章主要介绍了SpringBoot 创建容器的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-10-10
  • idea中打开项目时import project和open区别详解

    idea中打开项目时import project和open区别详解

    本文主要介绍了idea中打开项目时import project和open区别详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-06-06

最新评论