上传图片到tomcat服务器(tomcat7-maven-plugin)

本来比较好的做法是将图片上传到图片服务器(nginx),但nginx主要用在linux平台,由于客观原因暂不考虑。然后想到的是设置tomcat服务器虚拟路径,服务器路径映射到本地磁盘路径,将图片上传到本地磁盘中。但是项目中tomcat是以插件的形式内嵌到maven中(pom文件依赖tomcat7-maven-plugin),没有找到设置虚拟路径的方法,于是退而求其次,将图片上传到tomcat服务器中,存到/WEB-INF/uploadedImages/路径下。

先来看几个路径的问题,在java web工程中,/ 是指项目在tomcat中的根目录(可以在tomcat中配置,我的项目中配置的是 / ,根目录是http://localhost:8080/),实际是代表wepapp目录,以我自己的项目为例,通过request.getSession.getServletContext().getRealPah("/")得到的路径就是D:\javaweb\taotao-manager\taotao-manager-web\src\main\webapp\ 。另外,Thread.currentThread().getContextClassLoader().getResource("").getPath()得到的路径是D:\javaweb\taotao-manager\taotao-manager-web\target\classes\,target文件夹会在每一次tomcat启动运行项目时被清理(清理上次的target)后重建。

言归正传,由上可知图片上传的路径可表示为request.getSession.getServletContext().getRealPah("/") + "WEB-INF/uploadedImages/",由于在配置文件中配置了<mvc:resources location="/WEB-INF/uploadedImages/" mapping="/uploadedImages/**"></mvc:resources>,那么图片的src为http:localhost:8080/uploadedImages/**。

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值