【交流贴】关于web项目中,图片文件放置

艳沐石 2012-05-17 09:57:09
大家早上好,有一个问题请教一下。

常常在开发中,我把一下项目中的图片文件存放到工程内部的一个文件夹内,然后在数据库中存放一个访问地址。但是时常出现的一个问题就是,当项目重新发布的时候,图片信息就丢失了。

期望的结果,希望把图片信息存放到一个新的位置,tomcat可以访问,但是与项目无关。这样怎么发布项目都不会丢失图片信息。现在的问题:图片是需要直接通过地址路径请求的,而不能像其他文件似的,通过java来读取。

现在想请教的问题:大家在项目开发中,文件信息如何存放?

谢谢啦~~

留言就有参与分~~~
...全文
1195 16 打赏 收藏 转发到动态 举报
写回复
用AI写文章
16 条回复
切换为时间正序
请发表友善的回复…
发表回复
多木多多木 2014-10-24
  • 打赏
  • 举报
回复
哥们,可以指定一个Tomcat服务器的固定目录,使用绝对路径目录就行。我这么干过。
Jaaaaaaaava 2013-10-23
  • 打赏
  • 举报
回复
引用 楼主 yanmushi 的回复:
大家早上好,有一个问题请教一下。 常常在开发中,我把一下项目中的图片文件存放到工程内部的一个文件夹内,然后在数据库中存放一个访问地址。但是时常出现的一个问题就是,当项目重新发布的时候,图片信息就丢失了。 期望的结果,希望把图片信息存放到一个新的位置,tomcat可以访问,但是与项目无关。这样怎么发布项目都不会丢失图片信息。现在的问题:图片是需要直接通过地址路径请求的,而不能像其他文件似的,通过java来读取。 现在想请教的问题:大家在项目开发中,文件信息如何存放? 谢谢啦~~ 留言就有参与分~~~
你好 请问你是怎么解决的?我现在也遇到这个问题
a-shitou 2012-05-18
  • 打赏
  • 举报
回复
[Quote=引用 11 楼 的回复:]
可以直接访问的静态文件,有条件的话可以考虑使用单独的域名和服务器,或者使用云存储。可以减轻主web服务器的负担,同时提高网页加载速度
[/Quote]
++
cseu 2012-05-18
  • 打赏
  • 举报
回复
可以直接访问的静态文件,有条件的话可以考虑使用单独的域名和服务器,或者使用云存储。可以减轻主web服务器的负担,同时提高网页加载速度
艳沐石 2012-05-18
  • 打赏
  • 举报
回复
自己刷一下~~

谢谢 大家~~
四围 2012-05-18
  • 打赏
  • 举报
回复
不好意思啊,刚才好多字都没打上去,漏掉了!!!
四围 2012-05-18
  • 打赏
  • 举报
回复
我刚做一个上传图片的东西,然后动态显示图片,你可以这样你先你可以访问到 那个图片的,只是你的图片路劲存在数据库里面的路劲不全,就是他只存了你那个放图片的文件夹名字和图片名字,没有存你jsp文件到你放图片文件夹的路劲,所以在你输出地址的时候,会出现图片丢失,所以你先到数据库里面查看存进去的地址是多少,然后比较jsp-->图片的路劲,看少了那些 ,然后你家族输出图片的地方 ,写死就可以了

咱就是这么干的!!!!!
hugo000002020 2012-05-17
  • 打赏
  • 举报
回复
一般是放工程目录下,也有放数据库的,
像我们这边开发环境是windows,而布署环境是linux,如果是保存到文件,考虑到权限的问题,放工程目录下好点。像以前我用的mac os 发布人员拿不到最高的root权限,改起来很麻烦。
Ade子夜 2012-05-17
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 的回复:]

稍微解释下,一般大系统部署,会用Apache或EngineX作为前置Web服务器,也就是这样的模型:

互联网接入路由 ---- 硬件负载均衡 ---- 前置Web服务器 ---- 中间件 ---- 数据库


J2EE中间件在处理纯文件访问的能力其实远低于Apache,所以一般我们将所有不需要权限保护的静态资源:图片、视频、音频、JS脚本、CSS样式文件、HTML静态文件(一般是静态……
[/Quote]
充电中 2012-05-17
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 的回复:]

我的是直接放在服务器上、、、你怎么发布项目、服务器img文件夹是不会变的!!!!!
[/Quote]
相当于你同事发布的项目、和文件! 这个和那个耦合性 很符合、、呵呵、
MiceRice 2012-05-17
  • 打赏
  • 举报
回复
稍微解释下,一般大系统部署,会用Apache或EngineX作为前置Web服务器,也就是这样的模型:

互联网接入路由 ---- 硬件负载均衡 ---- 前置Web服务器 ---- 中间件 ---- 数据库


J2EE中间件在处理纯文件访问的能力其实远低于Apache,所以一般我们将所有不需要权限保护的静态资源:图片、视频、音频、JS脚本、CSS样式文件、HTML静态文件(一般是静态化后的网页),全部都放在“前置Web服务器上”

要知道每一次的网页请求,可能涉及10~50次资源请求,但其实真正需要J2EE中间件处理的其实往往只有一个,就是那个JSP。
mnm__ 2012-05-17
  • 打赏
  • 举报
回复
我不大明白“图片是需要直接通过地址路径请求的,而不能像其他文件似的,通过java来读取。”是什么意思。在jsp中,<img src="<%=pic %>" />应该是可以显示的吧??我们老师给讲的时候,说是要放到WEB-INFO底下,这样别人通过url就访问不到了。不过我之前参加的一个项目里面数据库中直接存图片,用到流什么的。这样的话,好像就不用考虑地址了吧。
充电中 2012-05-17
  • 打赏
  • 举报
回复
我的是直接放在服务器上、、、你怎么发布项目、服务器img文件夹是不会变的!!!!!
MiceRice 2012-05-17
  • 打赏
  • 举报
回复
我们项目中,图片一般直接放在Apache或EngineX上。
菖蒲老先生 2012-05-17
  • 打赏
  • 举报
回复
用相对路径会丢失么。。。
fanyuanwaifdl 2012-05-17
  • 打赏
  • 举报
回复
windows可以做个iis放文件

81,092

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧