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/...

总结

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

相关文章

  • java中实现分页的几种常见方式总结

    java中实现分页的几种常见方式总结

    在项目中经常会查询大量数据,这就要用到分页展示,下面这篇文章主要给大家介绍了关于java中实现分页的几种常见方式,文中通过示例代码介绍的非常详细,需要的朋友可以参考下
    2022-12-12
  • @RequestParam 和@RequestBody注解的区别解析

    @RequestParam 和@RequestBody注解的区别解析

    在 Spring MVC 中,我们可以使用 @RequestParam 和 @RequestBody 来获取请求参数,但它们在用法和作用上有一些区别,这篇文章主要介绍了@RequestParam 和@RequestBody注解的区别,需要的朋友可以参考下
    2023-06-06
  • JAVA多线程抢红包的实现示例

    JAVA多线程抢红包的实现示例

    这篇文章主要介绍了JAVA多线程抢红包的实现示例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2021-03-03
  • Springboot如何基于assembly服务化实现打包

    Springboot如何基于assembly服务化实现打包

    这篇文章主要介绍了Springboot如何基于assembly服务化实现打包,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-06-06
  • JDBC示例代码

    JDBC示例代码

    本教程提供了如何创建一个简单的JDBC应用程序的示例。演示如何打开一个数据库连接,执行SQL查询,并显示结果
    2014-03-03
  • Mybatis-Plus sum聚合函数及按日期查询并求和的方式详解

    Mybatis-Plus sum聚合函数及按日期查询并求和的方式详解

    这篇文章主要介绍了Mybatis-Plus sum聚合函数及按日期查询并求和,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2023-06-06
  • 剑指Offer之Java算法习题精讲数组与字符串题

    剑指Offer之Java算法习题精讲数组与字符串题

    跟着思路走,之后从简单题入手,反复去看,做过之后可能会忘记,之后再做一次,记不住就反复做,反复寻求思路和规律,慢慢积累就会发现质的变化
    2022-03-03
  • SpringBoot中的定时任务和异步调用详解

    SpringBoot中的定时任务和异步调用详解

    这篇文章主要介绍了SpringBoot中的定时任务和异步调用详解,SpringBoot 定时任务是一种在SpringBoot应用中自动执行任务的机制,通过使用Spring框架提供的@Scheduled注解,我们可以轻松地创建定时任务,需要的朋友可以参考下
    2023-10-10
  • Java集合之Set、HashSet、LinkedHashSet和TreeSet深度解析

    Java集合之Set、HashSet、LinkedHashSet和TreeSet深度解析

    这篇文章主要介绍了Java集合之Set、HashSet、LinkedHashSet和TreeSet深度解析,List是有序集合的根接口,Set是无序集合的根接口,无序也就意味着元素不重复,更严格地说,Set集合不包含一对元素e1和e2 ,使得e1.equals(e2) ,并且最多一个空元素,需要的朋友可以参考下
    2023-09-09
  • 使用springcloud+oauth2携带token去请求其他服务

    使用springcloud+oauth2携带token去请求其他服务

    这篇文章主要介绍了使用springcloud+oauth2携带token去请求其他服务方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-08-08

最新评论