Appearance
文件操作与缓存
1 案例需求
在主从表增删改查的案例业务上增加以下需求:
新增会议接待单时可以上传附件,附件文档存放于服务器本地。
能够配置允许上传的附件格式、附件的最大上传数量。
这个页面用来配置文件上传的参数,并通过将参数添加到缓存或将参数从缓存删除来控制参数是否生效。
本案例将使用文件类部件实现文件上传下载,使用缓存类部件实现文件上传的参数配置。
根据需求应提供的服务接口如下:
接口名称 | 接口功能 | 相关表 |
---|---|---|
文件上传 | 将文件上传到服务器 | |
文件下载 | 下载文件到本地 | |
删除文件 | 从服务器删除文件 | |
添加缓存 | 将文件上传的配置参数添加到缓存 | |
删除缓存 | 将文件上传的配置参数从缓存删除 | |
获取缓存 | 从缓存读取文件上传的配置参数 |
2 存储和缓存
在配置服务接口前先要配置存储和缓存。
首先在<DSC管理>-<存储管理>和<项目空间>-<配置项>-<DSC配置>-<存储配置>中完成存储的配置。
开发人员补充说明:存储根目录中的/Mas-FBP-Server/logs是在容器里的路径,所对应挂载的主机路径/data/softs/fbp/logs,如下图所示:
接着在<DSC管理>-<缓存管理>和<项目空间>-<配置项>-<DSC配置>-<缓存配置>中完成缓存的配置。
3 服务配置
3.1 文件上传
(1)添加接口
在目录下添加一个“文件上传”接口(POST方法)。
(2)添加服务部件
在画布上添加以下服务部件,并连接部件。
各部件说明如下:
部件类型 | 备注文字 | 任务说明 |
---|---|---|
开始 | ||
脚本 | 接收文件流 | 从前端页面获取文件流 |
写文件 | 写入文件流 | 在服务器的存储路径写入文件流 |
脚本 | 返回 | 返回请求结果 |
结束 |
(3)配置脚本部件:“接收文件流”
点击该部件,在右侧的部件配置面板上填写输入参数和输出参数。
其中输入参数脚本如下,request.form.file指从前端获取的文件流。
Google
inputStream = request.form.file;
name = request.form.file.name;
size = request.form.file.size;
(4)配置写文件部件:“写入文件流”
点击该部件,在右侧的部件配置面板上填写输入参数。
其中[存储]选择“本地存储”,这个选项是在<配置项>-<存储管理>里填写的标识code。
(5)配置脚本部件:“返回”
点击该部件,在右侧的部件配置面板上填写输入参数和输出参数。
其中输入参数脚本如下。
Google
map= seq.map('filename', name, 'size', size)
3.2 文件下载
(1)添加接口
在目录下添加一个“文件下载”接口(POST方法)。
(2)添加服务部件
在画布上添加以下服务部件,并连接部件。
各部件说明如下:
部件类型 | 备注文字 | 任务说明 |
---|---|---|
开始 | ||
读文件 | 读取文件流 | 在服务器的存储路径读取文件流,并返回请求结果 |
结束 |
(3)配置读文件部件:“读取文件流”
点击该部件,在右侧的部件配置面板上填写输入参数和输出参数。
3.3 删除文件
(1)添加接口
在目录下添加一个“删除文件”接口(POST方法)。
(2)添加服务部件
在画布上添加以下服务部件,并连接部件。
各部件说明如下:
部件类型 | 备注文字 | 任务说明 |
---|---|---|
开始 | ||
删除文件 | 删除文件 | 在服务器的存储路径删除文件 |
脚本 | 输出调试结果 | 用于服务调试,返回成功提示信息 |
结束 |
(3)配置删除文件部件:“删除文件”
点击该部件,在右侧的部件配置面板上填写输入参数。
(4)配置脚本部件:“输出调试结果”
点击该部件,在右侧的部件配置面板上填写输出参数。
该部件仅用于服务调试时输出提示文本“删除成功”,删除此部件并不影响服务接口的功能。
3.4 添加缓存
(1)添加接口
在目录下添加一个“添加缓存”接口(POST方法)。
(2)添加服务部件
在画布上添加以下服务部件,并连接部件。
各部件说明如下:
部件类型 | 备注文字 | 任务说明 |
---|---|---|
开始 | ||
添加缓存 | 添加缓存 | 将文件上传的配置参数(如支持的文件格式、允许上传的文件数量)添加到缓存 |
结束 |
(3)配置添加缓存部件:“添加缓存”
点击该部件,在右侧的部件配置面板上填写输入参数。
其中[缓存]选择“jvm内存”,这个选项是在<配置项>-<缓存管理>里填写的标识code。
3.5 删除缓存
(1)添加接口
在目录下添加一个“删除缓存”接口(POST方法)。
(2)添加服务部件
在画布上添加以下服务部件,并连接部件。
各部件说明如下:
部件类型 | 备注文字 | 任务说明 |
---|---|---|
开始 | ||
删除缓存 | 删除缓存 | 将文件上传的配置参数从缓存删除 |
结束 |
(3)配置添加缓存部件:“删除缓存”
点击该部件,在右侧的部件配置面板上填写输入参数。
3.6 获取缓存
(1)添加接口
在目录下添加一个“获取缓存”接口(POST方法)。
(2)添加服务部件
在画布上添加以下服务部件,并连接部件。
各部件说明如下:
部件类型 | 备注文字 | 任务说明 |
---|---|---|
开始 | ||
获取缓存 | 获取缓存 | 从缓存读取上传文件的配置参数 |
结束 |
(3)配置获取缓存部件:“获取缓存”
点击该部件,在右侧的部件配置面板上填写输入参数和输出参数。