背景
客户生产系统有张表存储流程bpmn文件,由于某些原因,更新程序找不到,因此只能连接数据库直接更新字段,数据库是oracle数据库,字段类型是blob。
PL/SQL Developer
一开始通过PL/SQL Developer
工具进行编辑,bpmn文件使用UTF-8编码,但是在工具中查看是乱码,因此不能直接编辑
Read the rest of this entry
activiti, oracle
说明
onlyoffice提供文档构建服务(document server),通过文档构建服务可以对文档进行二次修改,也可以动态创建文档,文档构建服务支持,文档构建服务支持以下编程语言进行构建
并且在onlyoffice的插件开发中,也可以使用node.js的api,这个在插件篇也会提到
安装
document server需要单独安装,可以从
这里下载最新的安装包,目前支持以下平台
Read the rest of this entry
onlyoffice
说明
onlyoffice提供文档转换服务,基本涵盖了几乎所有常见文档之间的转换,可以看下word文档能转换成的文档格式就知道其强大
实现
转换接口
文档转换是通过接口来完成的,接口地址是https://documentserver/ConvertService.ashx
,documentserver是documentserver的地址。这里列举几个常见的转换例子
onlyoffice
文件打开流程
要在浏览器打开一个office文件,需要经过以下步骤
- 指定文件下载路径和文件类型(word,ppt,excel)并通过JavascriptApi调用document server相关接口
- document server会在后台将文件下载好并将文件转换为
Office Open XML
格式,这是一种基于XML的通用文档格式
- document server会将文档转换为前端可展示的形式(canvas)
- 前端文档编辑器显示文档内容
实践
这里我们准备了一个样例文档并放到线上,这个样例文档也是onlyoffice官方使用的样例word文档。
创建页面
本地创建一个html页面,代码如下
Read the rest of this entry
onlyoffice
编译环境
官方推荐的编译环境是Ubuntu 14.04
,建议使用官方推荐的版本,避免编译过程中出现未知错误
64-bit Ubuntu 14.04
编译
apt-get install -y python git
git clone https://github.com/ONLYOFFICE/build_tools.git
apt-get install libgnutls-dev
nohup ./automate.py server >log.out 2>&1 &
如果顺利的话,大概需要8个小时以上能完成编译
onlyoffice
说明
onlyoffice有三个版本
- 社区版(基于AGPL v.3协议)
- 企业版
- 开发版
其中企业版和开发版都需要购买商业授权,本次以安装社区版为例
安装
onlyoffice支持docker安装和主机安装,docker安装比较简单,参考官方文档即可,这里就不再介绍,本次介绍的是在主机上安装onlyoffice
Read the rest of this entry
写在前面
长期以来,我一直用的是git命令行管理代码,当只有一个人时,这完全没问题,但参与团队协作,命令行就显得令不从心,这并不是说命令后做不到,只是命令需要记住太多的命令,学习成本太高,而且在解决冲突上面,如果只靠命令后,那种感觉你体验过一次就再也不想体验。在花了一两天时间研究idea的git工具后,我就决定彻底放弃命令行拥抱gui,因此这边将这两天的研究成果记录下来,供大家学习参考。
Read the rest of this entry
git
背景
在windows中,有诸如XShell,SecureCRT等ssh连接神器,但在Mac中,可选择的工具并不多,ITerm2被一众程序员吹上了天,但自己实际用下来并不好用,对终端的执念让我基本上尝试了所有在Mac上能找得到的终端工具,最终选择了termius,该工具界面有点极客风,设计简洁,连接速度快,可惜的是如果用户退出所有记录将被清除,在被清除两次后终于无奈的放弃了Mac下唯一上手的终端工具,放弃termius后却很难再找一个满意的终端,mac自带的终端其实还行,就是不大好用,理想中的终端应该满足以下功能
- 能够发送心跳包,不至于因为断网或者闲置时间过长连接断开需要重连
- 能够有一定的管理功能,记住密码,不用每次输入地址和账号,这个也是最重要的需求
- 支持tab页,支持分屏
- 能够上传下载文件
- 颜值要高
- 可以选择复制,因为在终端经常需要复制,大部分终端都可以选择即可复制,无需手动ctrl+c
如果mac自带终端能够满足以上需求,就完全可以用于日常开发,那么接下来我们就一步步改造终端
Read the rest of this entry
mac