精华内容
下载资源
问答
  • 上传文件后很多种保存方式,其中一种就是将上传的文件保存在某个磁盘...添加配置访问假如把上传文件放到E:\source\attachments这个文件夹中1、打开 tomcat/conf/server.xml 配置文件,在之间加入下面代码:Debug: ...

    上传文件后很多种保存方式,其中一种就是将上传的文件保存在某个磁盘的文件夹中

    这样子既不会给tomcat造成压力也不会给数据库造成压力

    但是有一个问题就是web项目读取的问题。所以可以通过配置tomcat虚拟路径来读取。

    添加配置访问

    假如把上传文件放到 E:\source\attachments这个文件夹中

    1、打开 tomcat/conf/server.xml 配置文件,在之间加入下面代码:

    Debug: 则是设定debug level,  0表示提供最少的信息,9表示提供最多的信息

    docBase:表示自己本地磁盘绝对路径

    path:表示自己指定一个jsp访问的路径

    crossContext

    true如果希望此应用程序中的调用ServletContext.getContext()成功返回在此虚拟主机上运行的其他Web应用程序的请求调度程序,则设置为。false在安全意识环境中设置为(默认值),以便getContext()始终返回null。

    docBase

    此Web应用程序的文档库(也称为上下文根)目录,或Web应用程序归档文件的路径名(如果此Web应用程序直接从WAR文件执行)。您可以为此目录或WAR文件指定绝对路径名,或者指定appBase与拥有主机的目录相关的路径名。

    除非在server.xml中定义了Context元素或者docBase不在Host的下面,否则不能设置此字段的值appBase。

    如果符号链接用于docBase,则对符号链接的更改仅在Tomcat重新启动或取消部署和重新部署上下文后才有效。上下文重新加载是不够的

    path

    此Web应用程序的上下文路径,与每个请求URI的开头匹配,以选择适当的Web应用程序进行处理。特定主机中的所有上下文路径必须是唯一的。如果指定空字符串(“”)的上下文路径,则表示您正在为此主机定义默认 Web应用程序,该应用程序将处理未分配给其他上下文的所有请求。

    只有在server.xml中静态定义Context时,才能使用此属性。在所有其他情况下,将从用于.xml上下文文件或docBase的文件名推断出该路径。

    即使在server.xml中静态定义Context,也不能设置此属性,除非docBase不在 Host的下面appBase或两者都是, deployOnStartup并且autoDeploy为false。如果未遵循此规则,则可能会导致双重部署。

    reloadable

    设置为true如果您希望Catalina监视更改类 /WEB-INF/classes/和/WEB-INF/lib更改,并在检测到更改时自动重新加载Web应用程序。此功能在应用程序开发期间非常有用,但它需要大量的运行时开销,不建议在部署的生产应用程序上使用。这就是为什么此属性的默认设置为false。但是,您可以使用Manager Web应用程序按需触发已部署应用程序的重新加载。

    2、当 jsp 页面要访问时,使用 path路径 + 文件相对路径 即可:

    文件无法加载

    image/word.jpg 可以是数据库存放的文件相对路径。

    展开全文
  • Tomcat配置虚拟目录(目录+文件)1.server.xml设置打开Tomcat安装目录,在server.xml中标签中,增加例如:或说明: path: 为空代表网站根目录docBase:可以设置绝对路径,也可设置相对路径,相对路径是相对 appBase ...

    Tomcat配置虚拟目录(目录+文件)

    1.server.xml设置

    打开Tomcat安装目录,在server.xml中标签中,增加

    例如:或

    800699994450eeb9e0a95afc1c6948be.png

    说明: path: 为空代表网站根目录

    docBase:可以设置绝对路径,也可设置相对路径,相对路径是相对 appBase 属性所设的目录而言的

    2.访问配置路径中的文件

    设置完1,启动web项目,通过http://localhost:端口/myWebPath可以访问D:/mlsc-ecs中的具体文件;

    3.访问配置路径目录

    若要访问目录,则还需要在web.xml中增加设置,再打开Tomcat安装目录,打开conf/web.xml 文件,在其中找到

    listings

    false

    将false设成true保存。

    4.启动Tomcat,通过http://localhost:端口/myWebPath可以访问D:/mlsc-ecs文件夹。

    bc0d7863ff68c835a0501ba75db041e9.png

    更多Tomcat相关教程见以下内容:

    Tomcat 的详细介绍:请点这里

    Tomcat 的下载地址:请点这里

    0b1331709591d260c1c78e86d0c51c18.png

    展开全文
  • 过程中有几个问题需要搞明白应用上下文如果使用默认的应用上下文那么访问应用时候的url就是 http://localhost:8080/如果把上下文改为自己的项目名称 /MyProject 那么访问的url就是 http://localhost:8080/MyProject...

    过程中有几个问题需要搞明白

    2890d0e67e0d

    应用上下文

    如果使用默认的应用上下文那么访问应用时候的url就是 http://localhost:8080/

    如果把上下文改为自己的项目名称 /MyProject 那么访问的url就是 http://localhost:8080/MyProject

    2890d0e67e0d

    项目结构

    下面这个form表单原本写的有点问题,action原本写的是 "/request" 和 web.xml中的 url-pattern写的一样,当我点击提交的时候,网页提示404找不到资源。

    先看一下下面的URL:

    http://192.168.1.1:8080/hello/index.html

    一个URL由

    服务器地址: http://192.168.1.1:8080

    WEB应用上下文: /hello

    网页或请求: /index.html

    三个部分组成。

    WEB应用发布时,WEB应用上下文可以自行指定,如放在ROOT/下的话,WEB应用上下文就是空,如:

    http://192.168.1.1:8080/index.html

    它的WEB应用上下文就是空。

    HTML协议中要求,form的action属性,以“/”开头是绝对路径,不以“/”开头的是相对路径。

    绝对路径是相对于服务器地址而言的,相对路径是相对于当前网页或请求而言的。

    举一个例子,你的当前网页位置是:

    http://192.168.1.1:8080/hello/page/index.html

    其中/hello是WEB应用上下文;/page/index.html是网页。

    在这个网页上有一个请求需要指向

    http://192.168.1.1:8080/hello/servlet/checkUser.cgi

    index.html中的form应该怎么写呢?

    可以写成绝对路径(相对于http:/192.168.1.1:8080)

    ...

    也可以写成相对路径(相对于http://192.168.1.1:8080/hello/page)

    ...

    由上可以看出,原本写的 "/request" 是相对于服务器地址而言的,因此当我点击提交时,由

    2890d0e67e0d

    跳向了

    2890d0e67e0d

    导致找不到资源。

    将 action 从 "/request'改为"request"后,从相对于服务器地址改为了相对于项目地址,即

    /request 对应着 localhost:8080/request

    request 对应着 localhost:8080/MyProject/request

    所以现在我们可以有两种写法(前提是Application Context 设置为 /MyProoject)

    /MyProject/request (以"/"开头,再加上项目名)

    request (不以"/"开头,直接写)

    2890d0e67e0d

    form.html

    2890d0e67e0d

    web.xml

    建议配置

    Application Context 设置为 /项目名

    form action="/项目名/requset"

    web.xml中设置url-pattern为 /request

    这样设置,无论从intellij中启动web项目,还是手动启动comcat,访问servlet都没有问题

    展开全文
  • 问题引入 为什么需要做这件事呢? 在javaWeb项目中,有些操作可能会上传...问题解决:tomcat配置虚拟路径 tomcat有好几种配置虚拟路径的方法,这里说下两种: 第一种:tomcat修改server.xml配置文件 打开所使用

    问题引入

    为什么需要做这件事呢?

    在javaWeb项目中,有些操作可能会上传一些文件,如图片等,但每一次重启tomcat,其目录下的资源文件都会被覆盖删除,也就是说上传后的文件在下一次重启tomcat后就没有了,如果每一次重启tomcat前去备份目录下的文件,重启后又粘贴复制回来,操作很麻烦,不好,所以就需要配置虚拟目录使得文件与程序分离。

    问题解决:tomcat配置虚拟路径

    tomcat有好几种配置虚拟路径的方法,这里说下两种:

    第一种:tomcat修改server.xml配置文件

    打开所使用的tomcat,找到server.xml然后打开,该文件在conf目录下

    找到<Host></Host>标签,在该标签内添加如下图的代码:

    <Context path="/upload/" docBase="D:\临时\upload\"></Context>

    其中path属性的值就是虚拟路径,就是在浏览器地址栏中访问所使用的路径。

    其中docBase属性的值就是你本地电脑硬盘实际目录的路径。

    需要注意的是:本项目本来有一个虚拟目录了,但并不会用到

    也就是这么使用路径是错误的,根本访问不到资源

    只需要加上自己在server.xml中设置的虚拟目录地址和文件名即可

    第二种:使用IDEA进行配置

    重启tomcat,就可以访问了

    而其他页面正常访问

    也就是以后上传文件都可以保存在本地硬盘的目录下,而不用担心每次重启tomcat后,上传的文件丢失的问题了。

    进一步:使用properties文件灵活配置路径

    在程序部署时可能会有其他情况,更换静态文件夹的路径,所以上传的路径不能写死了,可以配置在upload.properties文件中,方便调用修改。

    ①在spring的配置文件applicationContext.xml中引入该upload.properties文件

    注意:

    • 如果已经存在一个<context:property-placeholder>标签了,表示引入了其他的properties配置文件,所以再写一个就会报错,因此需要使用ignore-unresolvable="true"属性,忽略掉解析不到的属性。
    • 由于properties文件中可能存在中文,所以需要设置编码,以免引起中文乱码问题,使用file-encoding="utf-8"配置。

    ②upload.properties文件内容如下:

    ③在controller中调用

    @Controller
    public class TestController {
    
        @Value("${basePath}")
        String basePath;
    
        @RequestMapping("/getPath")
        @ResponseBody
        public String getPath() {
            System.out.println(basePath);
            return basePath;
        }
    }

    注意:这里会引出一个@Value的问题,会打印不到值,所以需要解决,在spring-mvc.xml中也引入<context:property-placeholder>标签引入properties文件。

    就会得到值了

    实际运用:上传文件

    第一步:搭建一个SSM+tomcat的环境,即配置好了各种配置文件的SSM项目

    第二步:使用IDEA设置tomcat的虚拟目录,即设置上传文件所保存的物理目录,这里是:D:\临时\upload

    同时该虚拟目录所对应的物理目录应该保存在upload.properties文件中

    第三步:在spring-mvc.xml和applicationContext.xml配置文件中引入properties文件

    第四步:前端index.jsp上传文件的表单

    <%@ page contentType="text/html;charset=UTF-8" language="java" %>
    <html>
    <head>
        <title>save</title>
    </head>
    <body>
    <h1>文件上传</h1>
    <form action="${pageContext.servletContext.contextPath}/uploadFile" method="post" enctype="multipart/form-data">
        文件1<input type="file" name="uploadFile"><br/>
        <input type="submit" value="提交">
    </form>
    </body>
    </html>

    第五步:Controller实现文件上传逻辑代码

    @Controller
    public class UploadController {
        @Value("${basePath}")
        String basePath;
    
        @RequestMapping("/uploadFile")
        @ResponseBody()
        public String upload(MultipartFile uploadFile) throws IOException {
            // 获取上传文件的名称
            String originalFilename = uploadFile.getOriginalFilename();
            // 保存文件到本地
            File file = new File(basePath + "\\" + originalFilename);
            uploadFile.transferTo(file);
            return "上传文件成功!<br/>文件在硬盘中的地址:" + file.getAbsolutePath() + "<br/>网络可访问地址:http://localhost:8585/upload/" + originalFilename;
        }
    }

    第六步:测试

    index.jsp页面浏览如下:

    选中文件进行上传

    上传文件成功后

    上传文件前,文件夹内容:

    上传文件后,文件夹内容:

    注意:必须配置虚拟目录,无论是使用IDEA配置还是通过tomcat的server.xml配置。

    本次项目的源码:GitHub的Demo

    展开全文
  • 1丶找到conf目录下的server.xml文件, 在节点下添加以下配置信息 : <Context path="/web/upload" docBase="D:\web\upload" debug="0" reloadable="true" /> 2丶属性解析如下 : (1) ‘path’ : 虚拟路径的指向...
  • Tomcat(二).web容器Tomcat知识点一文中,我们直接将项目war包放在tomcat/webapps目录下,访问:http://localhost:8080/helloServlet/login.html,需要加上helloServlet,那么如何不需要加呢? 方法一 将...
  • tomcat禁止访问文件与文件目录 最近项目扫描的时候遇到一个问题,需要在tomcat中限制对包含项目信息文件的访问,在使用eclipse写项目是,会生成一个.project文件,这个文件里面包含了项目的关键信息,而且有时候删除...
  • tomcat访问路径

    2021-06-19 21:28:54
    tomcat默认访问的目录 tomcat默认访问的是webapp下的root目录下的index.html文件 ...直接访问webapp下的某个文件就会找不到,需要把文件放到webapp下新建一个文件夹,把文件放到文件夹下面,并通过指定路径访问 ...
  • 一些项目中往往需要上传一些图片文件之类,一般不建议直接保存在数据库内,往往是讲图片等资源保存在服务器的某个文件夹下,传统做法是上传到部署目录下,通过相对路径进行访问。这样当我们系统需要进行升级,进行...
  • 在Springboot中默认的静态资源路径有:classpath:/METAINF/resources/,classpath:/resources/,classpath:/static/,classpath:/public/,从这里可以看出这里的静态资源路径都是在classpath中(也就是在项目路径下...
  • 一、配置虚拟目录 配置完成 以上配置相当于在tomcat的server.xml文件当中配置:下面自动生成 二、通过浏览器访问对应目录下的图片 访问路径:http://localhost:8080/pic/1.png
  • 外置tomcat映射路径在tomcat里的conf下的server.xml里Host标签下加入其中的docBase就是磁盘映射路径,path为访问路径,比如localhost:8080/report就可以访问到d盘pdf文件夹下的静态文件image.pngspringboot 1.x内置...
  • 1.想知道:设置TOMCAT访问其他路径文件 二.参考 1.配置Tomcat来访问其他地方的文件(在tomcat中配置虚拟映射文件路径) https://www.cnblogs.com/90s-ITBoy/p/13388460.html 总结:待检测 三.操作 1. ...
  • 第一步:打开server.xml配置文件、在Host节点里写上该行代码:如下图:它...这样做的好处就是所有的文件都放到了服务器上的磁盘下,减少了项目的大小Tomcat配置虚拟路径访问容器外的硬盘资源问题: 如果tomcat中上传了很...
  • IDEA设置Tomcat访问虚拟路径
  • 最近在做一个小项目,用到了...后来经过道友提醒,图片上传路径不能放置在eclipse的工程目录下,否则后期部署会有很大的不方便,而且每次图片上传结束后,都要刷新eclipse下的工程才能显示图片,这次进行了改正。将...
  • Tomcat服务器虚拟路径配置(eclipse版-单项目)前言一、tomcat配置1、在自己的tomcat下的找到 (Tomcat \conf\server.xml )文件,进而找到 Host 标签2、在 Host 标签下插入3、具体展示二、eclipse设置1、在编译器...
  • - 打开tomcat\conf\server.xml - 在host标签内添加两个context,docBase填本地绝对路径 <Context docBase="D:\developer\git\cloud\cqliving-framework-cloud-ui\cqliving-framework-cloud-ui-nazox\src\main...
  • 首先找到对应tomcat的位置,进入:tomcat->conf->server.xml 打开server.xml这个文件:添加以下配置: <Context path="/img" docBase="E:\photos" reloadable="true"/>在对应位置: <!-- Access...
  • 在项目中往往需要上传一些图片文件之类,一般不建议直接保存在数据库内,往往是讲图片等资源保存在服务器的某个文件夹下,传统做法是上传到部署目录下,通过相对路径进行访问。这样当我们系统需要进行升级,进行全量...
  • 使用SpsringMVC,使用restEasy调试,controller请求设置如下: Java代码 收藏代码 @RequestMapping(value="/list",method=RequestMethod.GET,produces=MediaType....charset=utf-8 Apache Tomcat/7.0.34 - Error report
  • 存放windows或Linux平台上启动和关闭Tomcat的脚本文件/conf:存放Tomcat服务器的各种全局配置文件,其中最重要的是server.xml和web.xml/doc:存放Tomcat文档/server:包含三个子目...
  • addResourceHandler() : 指访问路径,相当于Setting.xml里的path属性 addResourceLocations() :前面要有"file:" 后面接上映射的路径,相当于Setting.xml里面的docBase属性 网上有一些是继承 ...
  • 1,上传项目war包到{Path:tomcat}\webapps路径下。 2,运行Tomcat。 在{Path:tomcat}\bin路径下 ./startup.sh 3,此时{Path:tomcat}\webapps路径下会生成一个与war包同名的文件夹。 4,关闭Tomcat 在{Path:tomcat}...
  • Linux 1.cd /usr/local/tomcat/...Context docBase="项目部署在Tomcat里面的路径" path="/" debug="0" reloadable="true"/> 4. ./shutdown.sh 停止运行 5. ./startup.sh 开启运行 4,5步命令在tomcat中bin里...
  • tomcat的日志分为两部分 一是运行的日志,它主要记录运行的一些信息,尤其是一些异常错误日志...2.首先是配置tomcat访问日志数据,配置的方式如下 打开${catalina}/conf/server.xml文件 ---注:${catalina}是tomcat...
  • 配置文件配置访问路径是8081/springboot 但是通过外部tomcat启动项目的时候(项目生成jar包然后运行)发现路径不对,启动的路径是8080/ 那时候就到处百度,还是不知道为什么,后来才发现没有在pom.xml文件中配置...
  • 云服务器tomcat配置路径 内容精选换一换已获取该弹性云服务器的密钥文件。弹性云服务器已经绑定弹性IP地址。已配置安全组入方向的访问规则。如果您是在Windows操作系统上登录Linux,可以按照下面方式登录弹性云...
  • 如果你不想用ngnix配置的话,只单独使用tomcat的话可以看看这篇文章,接下来开始使用场景1.单机开发有时侯如果放在war下每次clean都会清理当前项目下静态文件特别折腾.2.只有启动tomcat即可静态文件放在外面不会被删,...
  • 1、右键项目,然后点击Properties 2.进行更改Context root,在这里需要注意的是路径前面要加上 / 。 3.鼠标右击Tomcat ,Clean一下重新启动即可。

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 186,376
精华内容 74,550
关键字:

tomcat如何配置访问路径