大家过年好,你们的老朋友小Q又回来了,最近一段时间忙于公司项目开发,又加上过年比较忙,所以没能留出时间更新内容,大家是不是有点着急了?公司最近在使用jeesite4开发项目,我呢,对这个框架一点也不熟悉,遇到问题都是现查现用。这不,在上传文件与上传图片这直接给卡死了。百度google了好久也没能找到解决办法,经过咨询开发者ThinkGem先生,总算找到了解决方案。所以呢,为了让以后使用jeesite4的同志们少走一点弯路,所以我就将自己的采坑之路给大家简单总结一下,希望对你们有所帮助。

首先呢,先给大家介绍一下jeesite4本地上传文件以及图片给大家提供的组件属性:

fileupload 文件上传:
1、文件上传:
<#form:fileupload id="upload1" bizKey="${user.id}" bizType="user_upload1"uploadType="all" class="required" readonly="false"/>
后台代码:FileUploadUtils.saveFileUpload(user.getId(), "user_upload1");2、图片上传:
<#form:fileupload id="upload2" bizKey="${user.id}" bizType="user_upload2"uploadType="image" class="required" readonly="false"/>
后台代码:FileUploadUtils.saveFileUpload(user.getId(), "user_upload2");3、返回路径:
<#form:fileupload id="upload3" returnPath="true"filePathInputId="upload3Path" fileNameInputId="upload3Name"uploadType="image" readonly="false" maxUploadNum="3" isMini="false"/>
<#form:input name="upload3Path" class="form-control"/>
<#form:input name="upload3Name" class="form-control"/>
组件属性:
var p = {// 标签参数id: id!,                    // 元素IDbizKey: bizKey!,         // 业务表的主键值(与附件关联的业务数据)bizType: bizType!,          // 业务表的上传类型(全网唯一,推荐格式:实体名_上传类型,例如,文章图片:article_photo)returnPath: @ObjectUtils.toBoolean(returnPath!false),    // 是否是返回文件路径到输入框(默认false),可将路径直接保存到某个字段里filePathInputId: filePathInputId!, // 设置文件URL存放的输入框的ID,当returnPath为true的时候,返回文件URL到这个输入框fileNameInputId: fileNameInputId!,   // 设置文件名称存放的输入框的ID,当returnPath为true的时候,返回文件名称到这个输入框uploadType: uploadType!'',           // 上传文件类型:all、file、image、media,若不设置,则自动根据上传文件后缀获取class: class!'',                    // 标签框的CSS类名,设置 required 加入必填验证readonly: @ObjectUtils.toBoolean(readonly!false),        // 是否只读模式,只读模式下为查看模式,只允许下载allowSuffixes: allowSuffixes!'',  // 允许上传的后缀,前台的限制,不能超越file.*AllowSuffixes的设置,例如:.jpg,.png,maxUploadNum: @ObjectUtils.toInteger(maxUploadNum!300),       // 多文件下允许最多上传几个,默认300个,设置-1代表不限制imageMaxWidth: @ObjectUtils.toInteger(imageMaxWidth!1024),   // 图片压缩,最大宽度(uploadType为image生效),设置-1代表不做任何处理imageMaxHeight: @ObjectUtils.toInteger(imageMaxHeight!768),   // 图片压缩,最大宽度(uploadType为image生效),设置-1代表不做任何处理isLazy: @ObjectUtils.toBoolean(isLazy!false),             // 设置为ture需要点击上传按钮才上传文件,否则选择后就直接上传isMini: @ObjectUtils.toBoolean(isMini!false),             // 是否是精简上传窗口,无边距,无边框preview: preview!'',                                        // 是否显示预览按钮,接受参数:weboffice};

上边的属性呢,我先介绍一下我用到的几个比较特殊的,要想获取上传文件的路径的话得设置filePathInputId的值即文件URL存放的输入框的id为upload(自定义),然后将returnPath属性设置为true,这样的话文件URL就返回到id为upload的输入框里了。fileNameInputId同理。

然后给大家介绍一下jeesite4上传文件到服务器的步骤与方法:

1,要创建工具类继承FileUploadServiceExtendSupport类,添加@Service注解,并且重写里边的uploadFile(FileEntity fileEntity)和getFileUrl(FileUpload fileUpload)方法。

2,uploadFile(FileEntity fileEntity)方法中的FileEntity类是上传文件或图片的对照类,通过

String path = fileEntity.getFileRealPath();
File file=new File(path);

获取到上传文件的file对象,然后去完成自己的上传服务器的逻辑。

3,getFileUrl(FileUpload fileUpload)方法是获取到上传文件成功之后返回的服务器路径,在这个方法中去写你得到服务器路径的逻辑。

4,特别注意的是bizKey和bizType属性,这两个属性不去掉会读取file表的数据,去掉会读取你指定的隐藏域数据。我之前对这个没理解透彻,导致图片数据回显出现问题。

好了今天就先说到这了,想了解更多学习知识,请关注微信公众号“阿Q说”,获取更多学习资料吧!你也可以后台留言说出你的疑惑,阿Q将会在后期的文章中为你解答。每天学习一点点,每天进步一点点。

Jeesite4本地及服务器上传文件、图片详解相关推荐

  1. PHP接口上传文件图片详解

    简介   PHP在处理POST文件上传使用一个文件上传变量$_FILES 和 $HTTP_POST_FILES(已弃用).相同点:$FILES和$HTTP_POST_FILES包含相同的信息.不同点: ...

  2. php js跨域上传文件,Jquery实现跨域异步上传文件步骤详解

    这次给大家带来Jquery实现跨域异步上传文件步骤详解,Jquery实现跨域异步上传文件的注意事项有哪些,下面就是实战案例,一起来看一下. 先说明白 这个跨域异步上传功能我们借助了Jquery.for ...

  3. linux上传文件put,详解Linux ftp 命令行中下载文件get与上传文件put的操作方法

    尽管现在有许多好的FTP应用程序,但服务器命令行ftp命令的应用程序仍然很多,下面就让电脑乐园小编带你一起来学习详解Linux ftp 命令行中下载文件get与上传文件put的操作方法. 介绍:从本地 ...

  4. Flutter HTTP上传文件使用详解

    Flutter HTTP 上传文件详解 Flutter HTTP上传文件详解 multipart/form-data Flutter Http插件 MultipartRequest使用 Flutter ...

  5. windows下命令行终端使用rz上传文件参数详解

    rz命令: (X) = option applies to XMODEM only (Y) = option applies to YMODEM only (Z) = option applies t ...

  6. JAVA上传文件图片到服务器保存

    这里我记录一个比较简单方便操作的JAVA上传文件图片到服务器并且保存! 首先是页面 html的   我这是提交一个文件和类型 <div style="border: 1px solid ...

  7. java上传文件图片到服务器保存,Java上传文件图片到服务器的方法

    这里我记录一个比较简单方便操作的java上传文件图片到服务器并且保存,具体内容如下 首先是页面html的   我这是提交一个文件和类型 我是添加一张临时图片得到微信的media_id保存数据库! en ...

  8. 向本地的apache服务器上传文件

    上传文件 上传单个文件 通过火狐浏览器中的Firebug插件,可以查看浏览器发送的数据包内容 //上传单个文件的数据包内容解析: // 请求头 Content-Type multipart/form- ...

  9. 如何设置ftp服务器上传文件夹至不同路径,设置ftp服务器上传文件夹

    设置ftp服务器上传文件夹 内容精选 换一换 上传单个或多个本地文件或文件夹至OBS指定路径.待上传的文件可以是任何类型:文本文件.图片.视频等等.上传本地文件或文件夹时,请确保本地文件或文件夹在上传 ...

最新文章

  1. pyinstaller打包教程及错误RuntimeError: Unable to open ./shape_predictor_68_face_landmarks.dat
  2. 深入解析浏览器的幕后工作原理(四) DOM树
  3. 思科路由器的基本设置(主机名,密码)
  4. C#中开发之Socket网络编程TCP/IP层次模型、端口及报文等探讨
  5. 无法访问netflix服务_Choerodon 的微服务之路(三):服务注册与发现
  6. 【水】对于算法的个人理解
  7. IO流 练习 -- 文件夹的删除
  8. 百度智能云“云+AI”新战略年终答卷,PaddlePaddle累计开发者数量265万人
  9. 怎样把照片中的头像扶正_一个男人的微信头像,往往暴露了“人品”,你是哪一种?...
  10. js高级编号笔记[新]-访问文档对象
  11. mybatisnet - 2 使用 DataMapper 访问数据库
  12. 【生产调度】基于matlab遗传算法求解柔性生产调度(FJSP)问题【含Matlab源码 1780期】
  13. Manjaro Gnome Hidpi 缩放问题
  14. 阿里云香港和大陆的服务器分析
  15. java手机充值_话费充值示例代码
  16. 理解IGRP协议-ielab
  17. K8S集群中Pod挂载Storageclass存储卷异常排查思路
  18. TOM邮箱布局商务市场,致力打造更全能的邮箱办公产品!
  19. react antd表格中渲染一张或多张图片
  20. scite 运行c语言,SciTE常用编译环境的配置,scite编译环境

热门文章

  1. Docker官网浅学---最原汁原味的Docker循序渐进接触之旅
  2. uni-app入门:wxs基本使用
  3. 计算机职业规范学后感,职业生涯规划学后感1000字计算机专业
  4. 中文技术文档写作规范【转载】
  5. 晶体管及其放大电路之共基极放大电路
  6. 移动电影院2.0发布及垂直社交等功能体验
  7. matlab 中| 、|| 、~ 含义
  8. Linux中使用命令分类型统计系统光盘中rpm包数量
  9. 大数据技术意义何在?
  10. 任丘虚拟服务器,河北任丘联通dns服务器地址