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目录下的所有文件(夹)其实都是匹配到的。

  • 相关阅读:
    mini2440 UBoot启动过程完全分析
    Linux Shell常用命令学习(1)
    S3C6410启动模式介绍
    漫画与新媒体的传播思考
    注册表修改启动项
    邮件主题是乱码的原因gbk 在utf8 显示问题
    移动 电话费 套餐
    java 异常的问题讨论
    领结的打法
    c# 字符之间的转换
  • 原文地址:https://www.cnblogs.com/devise/p/9974679.html
Copyright © 2011-2022 走看看