[quote=引用 30 楼 hepeng154833488 的回复:] 可以把这个文件夹创建到你的项目里面吗?……
我也遇到个这个问题,用了好久才解决,你到网上下载文件的jar包就可以了。
[Quote=引用楼主 tokissing 的回复:] 是这样的。 我写了一个图片上传的方法,上传时,判断没有这个目录就自动建立一个。 然后开始些日图片,就是上传图片,能成功。 但是,重启项目,或者清理缓存之后,图片和文件夹就会自动被删除,不见了。 求解决办法!!! 或者有更好的上传方法也行。急。。。。。。。 [/Quote] 不知道楼主重启项目或清理缓存是如何来操作的,如果之前上传都是没问题的,只是在重启项目或清理缓存之后出现这种现象,也有可能是你的操作有问题吧。 是不是楼主点击过菜单Project里面的Clean呢?如果是的话,问题就在此了。
[Quote=引用 8 楼 weihui5368452 的回复:] 一般服务器都不会关闭的,关了也可以啊,只要不要重新部署就没事了,否则是会删除原来所有文件! [/Quote]是的
你按这几个步骤去做,就能解决问题: 1.把/tomcat/webapps/目录清空,删掉该文件夹的所有内容, 2.修改/tomcat/conf/web.xml文件: <servlet> <servlet-name>default</servlet-name> <servlet-class>org.apache.catalina.servlets.DefaultServlet</servlet-class> <init-param> <param-name>debug</param-name> <param-value>0</param-value> </init-param> <init-param> <param-name>listings</param-name> <param-value>true</param-value> </init-param> <load-on-startup>1</load-on-startup> </servlet> 3.修改/tomcat/conf/server.xml文件: <Host name="localhost" appBase="webapps" unpackWARs="true" autoDeploy="true" xmlValidation="false" xmlNamespaceAware="false"> <!-- SingleSignOn valve, share authentication between web applications Documentation at: /docs/config/valve.html --> <!-- <Valve className="org.apache.catalina.authenticator.SingleSignOn" /> --> <!-- Access log processes all example. Documentation at: /docs/config/valve.html --> <!-- <Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs" prefix="localhost_access_log." suffix=".txt" pattern="common" resolveHosts="false"/> --> <!----><Context path="/ser" docBase="D:\project\myProject\editor\WebRoot"></Context> <!--<Context path="/mvc" docBase="D:\project\myProject\area\WebRoot"></Context>--> </Host> 其实就是给工程配置虚拟路径,这样tomcat在启动的时候直接找到你的工程了, 你上传的图片就不会跑到/tomcat/webapps/目录,而是直接到了你的工程里, 不管你怎样重启项目,或者清理缓存,上传的文件依然存在!
<servlet> <servlet-name>default</servlet-name> <servlet-class>org.apache.catalina.servlets.DefaultServlet</servlet-class> <init-param> <param-name>debug</param-name> <param-value>0</param-value> </init-param> <init-param> <param-name>listings</param-name> <param-value>true</param-value> </init-param> <load-on-startup>1</load-on-startup> </servlet>
<Host name="localhost" appBase="webapps" unpackWARs="true" autoDeploy="true" xmlValidation="false" xmlNamespaceAware="false"> <!-- SingleSignOn valve, share authentication between web applications Documentation at: /docs/config/valve.html --> <!-- <Valve className="org.apache.catalina.authenticator.SingleSignOn" /> --> <!-- Access log processes all example. Documentation at: /docs/config/valve.html --> <!-- <Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs" prefix="localhost_access_log." suffix=".txt" pattern="common" resolveHosts="false"/> --> <!----><Context path="/ser" docBase="D:\project\myProject\editor\WebRoot"></Context> <!--<Context path="/mvc" docBase="D:\project\myProject\area\WebRoot"></Context>--> </Host>
D:\project\myProject\editor\WebRoot 这个路径是项目的web根目录,editor是项目名称, 那么D:\project\myProject\editor\src 就是你存放java文件的根目录了 /ser 就是项目应用的名称了,或者说是上下文路径,这个名称可以随意修改 如果你的tomcat端口是 8080, 那么项目的访问路径就是 http://localhost:8080/ser 上传时就会在D:\project\myProject\editor\WebRoot\ 目录中创建文件夹 不管你怎样重启项目,或者清理缓存,上传的文件依然存在, 因为上传的文件都已经存在于你的项目中 这样方式只需要部署一次,没有重新部署的说法 如果你是在eclipse中点来点去的部署项目,也就等于是把D:\project\myProject\editor\WebRoot目录的所有文件和文件夹都复制到了 /tomcat/webapps/editor/目录下,那么项目的访问路径就是 http://localhost:8080/editor 上传时就会在 /tomcat/webapps/editor/ 目录中创建文件夹 只要重新部署或清理缓存,上传的文件都烟消云散了 因为重新部署时,先删除 /tomcat/webapps/editor/ 目录,再复制一遍D:\project\myProject\editor\WebRoot目录的所有文件和文件夹 这回我真的已经讲的很详细了
你按这几个步骤去做,就能解决问题: 1.把/tomcat/webapps/目录清空,删掉该文件夹的所有内容, 2.修改/tomcat/conf/web.xml文件: Java code12345678910111213<servlet> <servlet-name>default</servlet-name> <servlet-cla……
81,094
社区成员
341,711
社区内容
加载中
试试用AI创作助手写篇文章吧