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

QQ登录

只需一步,快速开始

查看: 1441|回复: 6

[结贴] Baas中用JAVA代码如何实现从数据库中的doc取出图片的URL

[复制链接]

53

主题

267

帖子

896

积分

高级会员

Rank: 4

积分
896
QQ
发表于 2016-1-23 16:07:45 | 显示全部楼层 |阅读模式
本帖最后由 ajun007_cn 于 2016-1-23 16:09 编辑

Baas中用JAVA代码如何实现从数据库中的doc取出图片的URL?
需求:我已经在BeX5V3.3做后台管理系统,页面使用attachmentImage进行图片上传,保存到数据库一个text类型的字段中,我想在Baas里用JAVA从数据库里取出这个图片的URL做为微信图文消息的参数

16.jpg

数据库字段的内容row.getString("fContentImg")的值如下:
[{"docID":"C6ECBB531A4000017473728213769430","docName":"ad_down.png","size":"122055","docPath":"/defaultDocNameSpace","fileID":"13-defaultDocNameSpace","time":"2016-01-21T15:13:11.728Z"}]

请问如何通过拼接字符串的方式,得到一个可以有效的URL(可以显示出图片的URL)?
东莞相思鸟软件 专业X5开发团队 长期招收学徒 推荐工作
http://www.leiothrixsoft.com QQ:402807176

91

主题

13万

帖子

3万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
35942
发表于 2016-1-25 11:44:33 | 显示全部楼层
baas中没有提供API,如果要在baas中用就需要用调用第三放action的方式去获取

在BeX5的BIZ层定义一个函数获取到url,然后在baas中调用action
远程的联系方法QQ1392416607,添加好友时,需在备注里注明其论坛名字及ID,公司等信息
发远程时同时也发一下帖子地址,方便了解要解决的问题  WeX5教程  WeX5下载



如按照该方法解决,请及时跟帖,便于版主结贴
回复 支持 反对

使用道具 举报

53

主题

267

帖子

896

积分

高级会员

Rank: 4

积分
896
QQ
 楼主| 发表于 2016-1-25 14:38:27 | 显示全部楼层
本帖最后由 ajun007_cn 于 2016-1-25 15:24 编辑
jishuang 发表于 2016-1-25 11:44
baas中没有提供API,如果要在baas中用就需要用调用第三放action的方式去获取

在BeX5的BIZ层定义一个函数获 ...

不管是在BIZ或UI2里,如何从[{"docID":"C6ECBB531A4000017473728213769430","docName":"ad_down.png","size":"122055","docPath":"/defaultDocNameSpace","fileID":"13-defaultDocNameSpace","time":"2016-01-21T15:13:11.728Z"}]得到图片的URL,看之前的贴子(http://bbs.wex5.com/forum.php?mod=viewthread&tid=37294
),是2.7的版本,是在UI里通过justep.Doc.getURLByFileID取URL,于是我在表里加了一个fCatalogImgURL字段,在图片上传的时候就从附件字段里,提取URL放到fCatalogImgURL字段里面,Baas就直接从fCatalogImgURL字段里取图片的URL,以下是代码:

if (event.col ==="fCatalogImg"){
                        var json =event.value;
                        if(json !== ""){
                        var jsonList = eval("("+json+")");
                        var rootPath = jsonList[0]["docPath"]; //获得docPath
                        var fileID = jsonList[0]["fileID"]; //获得fileID
                        var url = justep.Doc.getURLByFileID(rootPath, fileID); //获得图片url
                        event.source.setValue("fCatalogImgURL", url);
                }
                        
                }但运行时提示:Cannot read property 'docPath' of undefined,和:Object # has no method 'Doc.getURLByFileID'请问这代码错在哪里?

东莞相思鸟软件 专业X5开发团队 长期招收学徒 推荐工作
http://www.leiothrixsoft.com QQ:402807176
回复 支持 反对

使用道具 举报

91

主题

13万

帖子

3万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
35942
发表于 2016-1-26 09:13:27 | 显示全部楼层
js中
1.DocUtils = require('$UI/system/components/justep/docCommon/docUtil');
2.
  1. var jsonList = eval("(" + row.val('fAttachmentPicture') + ")");
  2.                 if(jsonList != undefined ){
  3.                         var docPath = jsonList[0]["docPath"]; // 获得docPath
  4.                         var fileID = jsonList[0]["fileID"];
  5.                        
  6.                         var url = DocUtils.InnerUtils.getURLByFileID({docPath:docPath,fileID:fileID,context:this.getContext()})
复制代码



这个方法需要在有BeX5中用,单独的baas中不能用
远程的联系方法QQ1392416607,添加好友时,需在备注里注明其论坛名字及ID,公司等信息
发远程时同时也发一下帖子地址,方便了解要解决的问题  WeX5教程  WeX5下载



如按照该方法解决,请及时跟帖,便于版主结贴
回复 支持 反对

使用道具 举报

53

主题

267

帖子

896

积分

高级会员

Rank: 4

积分
896
QQ
 楼主| 发表于 2016-1-26 16:22:46 | 显示全部楼层
jishuang 发表于 2016-1-26 09:13
js中
1.DocUtils = require('$UI/system/components/justep/docCommon/docUtil');
2.

也就是说:即使我拿到了在BeX5上传图片的地址,也只能在BeX5里面显示,离开了beX5的环境还是无法正常显示图片是吗?
东莞相思鸟软件 专业X5开发团队 长期招收学徒 推荐工作
http://www.leiothrixsoft.com QQ:402807176
回复 支持 反对

使用道具 举报

91

主题

13万

帖子

3万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
35942
发表于 2016-1-26 17:41:53 | 显示全部楼层
attachmentImage的url是有bsessionid的
远程的联系方法QQ1392416607,添加好友时,需在备注里注明其论坛名字及ID,公司等信息
发远程时同时也发一下帖子地址,方便了解要解决的问题  WeX5教程  WeX5下载



如按照该方法解决,请及时跟帖,便于版主结贴
回复 支持 反对

使用道具 举报

53

主题

267

帖子

896

积分

高级会员

Rank: 4

积分
896
QQ
 楼主| 发表于 2016-2-19 20:22:38 | 显示全部楼层
结贴
东莞相思鸟软件 专业X5开发团队 长期招收学徒 推荐工作
http://www.leiothrixsoft.com QQ:402807176
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-5-18 11:08 , Processed in 0.103985 second(s), 26 queries .

Powered by Discuz! X3.4

© 2001-2013 Comsenz Inc.

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