写了一个图片上传的方法,上传时,判断没有这个目录就自动建立一个。
然后开始些日图片,就是上传图片,能成功。
但是,重启项目,或者清理缓存之后,图片和文件夹就会自动被删除,不见了。
你按这几个步骤去做,就能解决问题:
1.把/tomcat/webapps/目录清空,删掉该文件夹的所有内容,2.修改/tomcat/conf/web.xml文件:
1
2
3
4
5
6
7
8
9
10
11
12
13
|
<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文件:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
|
<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/目录,而是直接到了你的工程里,
不管你怎样重启项目,或者清理缓存,上传的文件依然存在!
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目录的所有文件和文件夹