struts2+Hibernate上传图片,如何实现图片可以放在服务器上;数据库保存图片路径。

struts2+Hibernate上传图片,如何实现图片可以放在服务器上;数据库保存图片路径。,第1张

楼主
struts2
上传代码会写吗?
1
struts2本身提供了上传
拦截器
,用struts2实现上传功能,并获得保存地址
配置fileUpload的拦截器
2
获得文件存储地址(上传时指定)+文件名
3
调用保存方法(
Hibernate
),将文件路径存入数据库
在一个事务中完成即可!
如:有哪块有难点,及时追问。good
luck!

第一、地址,就是你本地地址,服务器要取出数据,总得有个路径吧。放到服务器方便访问就行
第二、你在pc上用浏览器咋访问就咋访问呀,就是网络地址
第三、listview的显示网上很多的,我就没有必要跟你多说了

一般有两种情况,
一种是前端开发需要显示的,这个是页面构成必须的元素,一般这些会做 动静分离,后台接口 跟 前端资源会部署在不同的服务器上,有不同的优化,一般会有转发的服务器,判断是后台接口,就转发到后台的服务器,如果是前端资源,就转发到前台的服务器。一般情况下,前端服务器,跟后台的服务器,是分离开的,有不同的人去管理,如果项目小的话,可能就全放在一个。这个优化的化,你可以去了解下 CDN原理。这个是用来优化静态资源加载情况的。
另一种情况是,显示的,不是前端构成的,是用户上传文件产生的,这种情况下,现在一般有专门的对象存储,用过 七牛云,跟阿里的。这个的逻辑是文件上传的时候,不是上传到我们自己的服务器,上传到专门的云服务器,我们自己数据库只需要保存这些上传文件的地址,真正使用的时候,把连接给前端,前端自动会根据内容到专门的云服务器上去获取。所有的安全,优化,带宽,缓存命中,这些都有由云服务器去保证。 简单来说,只有有钱,这些东西根本不会成为你项目的瓶颈。
作为技术,我们讨论的应该不是这些。会做备份,这个可以有专门的磁盘阵列去实现,简单来说,就是上传的内容保存到磁盘的时候,会自动多保存几个备份到不同的磁盘上。还是那句话,多去了解下CDN的原理,最后这段,个人理解,不一定对。

一般放在网站跟目录的一个公共文件夹比如public/style/(js,images,css)
这时从数据库取出名称后 在模板显示是这样的
<img src='/public/style/images/'<php echo $img_name >/>
有时我们会在控制器就指定好路径了
$img_dir = '/public/style/images/';
return $img_dir$img_name;


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zz/12928477.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-29
下一篇 2023-05-29

发表评论

登录后才能评论

评论列表(0条)

保存