zoukankan      html  css  js  c++  java
  • 关于使用ssm与spring时,配置tomcat 虚拟目录( doBase )中的一些坑

    一、使用SSM需要 配置虚拟目录时 tomcat的配置

    在tomcat server.xml的<HOST></HOST>中加入以下内容

    在配置完成之后,当我们访问URL  为  ip+端口/users的时候,服务器就会去访问我们的doBase下的路径

    比如,在users目录下有 一个名为abc.jpg的文件 ,

    那么我们 访问 ip+端口/users/abc.jpg 就会得到G:/imooc-videos-resources/douyin/users/下的abc.jpg。

    需要注意的是 设置虚拟目录时,在ip+端口号后面不需要加上项目名,举个例子

    这是我项目的访问路径,如果你使用ip+端口号/项目名/users是访问不了虚拟目录的,必须使用ip+端口号/users 才能映射到我们配置的虚拟目录,所以其实tomcat doBase 映射 只针对 ip+端口号 下的映射,不论其他的因素。

    下面通过从数据库中读取字段,然后配置tomcat虚拟目录的实例来演示

    数据库的内容:

    图片真实的存储路径

    虚拟目录的配置:

    需要注意的是doBase   G:/imooc-videos-resources/douyin/users  这里是固定的写法,写为G:/imooc-videos-resources/douyin/ 还是G:/imooc-videos-resources/douyin 都是无法识别的,本来我想的是通过/users映射到G:/imooc-videos-resources/douyin/ 那么就可以在douyin目录下进行查找 刚好是可以找到users目录的,但实践证明,这样是不行的。

    结果测试:

    二、如果是springboot项目

    使用Springboot时 在类中的代码如下 (数据库,以及图片的真实路径,等其他信息都是一样的)

    这里的意思是/** 表示匹配到的所有的静态资源,都会去G:/imoo-videos-resources/douyin/ 下的目录去进行查找,

    这里与在使用SSM在tomcat中的配置不同的是,使用SSM时在tomcat中映射为 G:/imoo-videos-resources/douyin/ 是无法找到的,必须 配置为

     <Context docBase="G:/imooc-videos-resources/douyin/users" path="/users" /> 

      <Context docBase="G:/imooc-videos-resources/douyin/bgm" path="/bgm" />

    才能匹配到

    而使用springboot当我们映射为G:/imoo-videos-resources/douyin/ 。那么 douyin目录下的所有文件(夹)其实都是匹配到的。

  • 相关阅读:
    Red packet
    Pie
    River Hopscotch
    5.spring使用注解开发
    11.Java邮件发送
    10.Java文件传输
    HTML中标签的嵌套原则
    9.SMBMS超市订单管理系统
    8.MVC和过滤器Filter
    7.JSP基础语法,指令和标签以及Java Bean
  • 原文地址:https://www.cnblogs.com/devise/p/9974679.html
Copyright © 2011-2022 走看看