起步软件技术论坛
搜索
 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 2769|回复: 11

[处理中3] 如何将input(file)选择的文件存储到后台数据库中

[复制链接]

56

主题

199

帖子

409

积分

中级会员

Rank: 3Rank: 3

积分
409
QQ
发表于 2017-3-9 16:58:59 | 显示全部楼层 |阅读模式
请问如何将input(file)选择的文件存储到后台数据库中?
1.png
发表于 2017-3-9 17:07:55 | 显示全部楼层
文件上传,推荐使用attachmentSimple 组件!这个组件就是专门做附件上传使用的!用法很简单,只要绑定data组件字段就可以了!
qq:1912779713
WeX5教程--WeX5下载
回复 支持 反对

使用道具 举报

56

主题

199

帖子

409

积分

中级会员

Rank: 3Rank: 3

积分
409
QQ
 楼主| 发表于 2017-3-9 17:19:29 | 显示全部楼层
本帖最后由 xiaogai 于 2017-3-9 17:20 编辑
liangyongfei 发表于 2017-3-9 17:07
文件上传,推荐使用attachmentSimple 组件!这个组件就是专门做附件上传使用的!用法很简单,只要绑定data ...

我之前试了attachmentSimple 组件,也是遇到了存储问题。把attachmentSimple 组件选择的文件存储后台数据库一直实现不了,他的路径一直是存到了bass服务器,所以不知道怎么解决,还请指教。
回复 支持 反对

使用道具 举报

发表于 2017-3-9 17:21:56 | 显示全部楼层
xiaogai 发表于 2017-3-9 17:19
我之前试了attachmentSimple 组件,也是遇到了存储问题。把attachmentSimple 组件选择的文件存储到数据库 ...

文件是存储在服务器目录下的!数据库中存储的是json格式的数据!通过这个数据的解析就能获取到文件的URL地址!

不建议文件直接存储在数据库中!效率会很差的 !
qq:1912779713
WeX5教程--WeX5下载
回复 支持 反对

使用道具 举报

56

主题

199

帖子

409

积分

中级会员

Rank: 3Rank: 3

积分
409
QQ
 楼主| 发表于 2017-3-9 17:29:00 | 显示全部楼层
liangyongfei 发表于 2017-3-9 17:21
文件是存储在服务器目录下的!数据库中存储的是json格式的数据!通过这个数据的解析就能获取到文件的URL ...

我有一点不是很懂,attachmentSimple 组件选择的文件存储到bass服务器后要怎么转换路径使之能够将文件传送给后台?我使用attachmentSimple 组件添加图片,却不知道怎么获取添加的图片的参数,所以一直报空指针的错误,。
回复 支持 反对

使用道具 举报

发表于 2017-3-9 17:36:24 | 显示全部楼层
xiaogai 发表于 2017-3-9 17:29
我有一点不是很懂,attachmentSimple 组件选择的文件存储到bass服务器后要怎么转换路径使之能够将文件传 ...

attachmentSimple  组件绑定data组件字段就可以了! data组件将数据保存到数据库中!
不需要写代码传参数等。。。
你可以参考下案例/UI2/system/components/justep/attachment/demo/demoSimple.w
直接右键 浏览器运行即可!

也可以看一下这个案例!获取上传文件的图片并显示:http://docs.wex5.com/wex5-ui-question-list-2093


qq:1912779713
WeX5教程--WeX5下载
回复 支持 反对

使用道具 举报

56

主题

199

帖子

409

积分

中级会员

Rank: 3Rank: 3

积分
409
QQ
 楼主| 发表于 2017-3-9 17:46:51 | 显示全部楼层
本帖最后由 xiaogai 于 2017-3-9 17:50 编辑
liangyongfei 发表于 2017-3-9 17:36
attachmentSimple  组件绑定data组件字段就可以了! data组件将数据保存到数据库中!
不需要写代码传参数 ...

谢谢您的解答! 我现在用attachmentSimple  组件绑定了一个字段,而且我还有一个数据组件urlData存储添加的文件(包括图片、视频等)的信息,我在执行添加数据的功能时需要向方法传递一个image参数,我现在不知道这个image参数怎么获取?

这个是attachmentSimple 组件绑定的字段

这个是attachmentSimple  组件绑定的字段

这个是urData

这个是urData
3.png
回复 支持 反对

使用道具 举报

发表于 2017-3-9 18:09:07 | 显示全部楼层
xiaogai 发表于 2017-3-9 17:46
谢谢您的解答! 我现在用attachmentSimple  组件绑定了一个字段,而且我还有一个数据组件urlData存储添加 ...

首先,你可以看一下attachmentSimple绑定的那个data组件字段的值是什么?里面已经存储了文件的名字!请问你还想存储其他什么信息呢??

如果需要另外存储一些信息
可以通过data组件主从关联实现!
http://docs.wex5.com/wex5-ui-question-list-2072

urlData 组件作为一个从表,外键关联data1 的id  ,data1组件就是主表!

你可以观察一下这个字段的结构
  1. [{"storeFileName":"C771B2E6DE400001939BB5A01B901E30","realFileName":"test.png"}]
复制代码


他有 一个storeFileName 的信息,从表中也存储上这条信息! 剩下的信息就是这个文件相关的信息了!

意思就是在data1组件的 onValueChage 事件中判断绑定的那个字段数组长度!,并分别取出每个值storeFileName,urlData 根据外键关系,依次新增几行数据,并且将storeFileName  和文件的其他信息赋值进去!(有些值可以手写!这样就保存了!)


查询的时候!也是主从关系查询数据!并且根据id和storeFileName  循环过滤就能对应先文件和它的描述信息!
上边的分享是一个attachmentSimple组件上传多个附件的情况!

如果简单起见,一个attachmentSimple只上传一个附件,那么直接在data1中添加几个字段就可以了!不用再放置一个urlData了!


qq:1912779713
WeX5教程--WeX5下载
回复 支持 反对

使用道具 举报

56

主题

199

帖子

409

积分

中级会员

Rank: 3Rank: 3

积分
409
QQ
 楼主| 发表于 2017-3-10 09:21:15 | 显示全部楼层
liangyongfei 发表于 2017-3-9 18:09
首先,你可以看一下attachmentSimple绑定的那个data组件字段的值是什么?里面已经存储了文件的名字!请问 ...

您好,urlData数据是后台处理的,不需要我来处理。如果我穿的是一个图片,我需要获取这个图片image的值(file类型的),我按照下图中方式写的,结果报错了。
2.png
1.png
回复 支持 反对

使用道具 举报

发表于 2017-3-10 11:54:56 | 显示全部楼层
xiaogai 发表于 2017-3-10 09:21
您好,urlData数据是后台处理的,不需要我来处理。如果我穿的是一个图片,我需要获取这个图片image的值( ...

建议按照我提供的思路来做吧!如果你想自己改变attachmentSimple组件访问的URL
应该参考:http://docs.wex5.com/wex5-ui-question-list-2100

否则组件自己封装的方法,肯定不支持带参数的!而且后台java也默认没有接管其他参数!!还需要你自己写代码实现!
qq:1912779713
WeX5教程--WeX5下载
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|X3技术论坛|Justep Inc.    

GMT+8, 2025-7-6 03:08 , Processed in 0.068167 second(s), 26 queries .

Powered by Discuz! X3.4

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表