待整理-20180625 工作流和过程自动化框架 Camunda BPM

IMIX(Inter-bank Market Information eXchange),狭义上指IMIX协议,全称是银行间市场业务数据交换协议,是一种用于在银行间市场交易活动(包括人民币、外汇和衍生品等各类产品的交易、发行、确认和清结算等)中实现金融信息实时传输的电子通信协议。

Apache Mina Server 是一个网络通信应用框架,也就是说,它主要是对基于TCP/IP、UDP/IP协议栈的通信框架(当然,也可以提供JAVA 对象的序列化服务、虚拟机管道通信服务等),Mina 可以帮助我们快速开发高性能、高扩展性的网络通信应用,Mina 提供了事件驱动、异步(Mina 的异步IO 默认使用的是JAVA NIO 作为底层支持)操作的编程模型。Mina 主要有1.x 和2.x 两个分支,这里我们讲解最新版本2.0,如果你使用的是Mina 1.x,那么可能会有一些功能并不适用。学习本文档,需要你已掌握JAVA IO、JAVA NIO、JAVASocket、JAVA 线程及并发库(java.util.concurrent.*)的知识。Mina 同时提供了网络通信的Server 端、Client 端的封装,无论是哪端,Mina 在整个网通通信结构中都处于如下的位置:可见Mina 的API 将真正的网络通信与我们的应用程序隔离开来,你只需要关心你要发送、接收的数据以及你的业务逻辑即可。

ASM 是一个 Java 字节码操纵框架。它可以直接以二进制形式动态地生成 stub 类或其他代理类,或者在装载时动态地修改类。ASM 提供类似于 BCEL 和 SERP 之类的工具包的功能,但是被设计得更小巧、更快速,这使它适用于实时代码插装。 
比如CGLIB利用它生成代理类 
http://blog.csdn.net/liyangbing315/article/details/5472862 
你可以利用ASM 动态操作class

Apache POI - the Java API for Microsoft Documents---acv

The Apache POI Project's mission is to create and maintain Java APIs for manipulating various file formats based upon the Office Open XML standards (OOXML) and Microsoft's OLE 2 Compound Document format (OLE2). In short, you can read and write MS Excel files using Java. In addition, you can read and write MS Word and MS PowerPoint files using Java. Apache POI is your Java Excel solution (for Excel 97-2008). We have a complete API for porting other OOXML and OLE2 formats and welcome others to participate.

FastInfoset(快速信息集)
webservice的性能实在是不敢恭维。曾经因为webservice吞吐量上不去,对webservice进行了一些性能方面的优化,采用了FastInfoset,效果很明显,极端条件下的大数据量传输,性能提高60%,他可以减少传输成本,序列化成本和xml解析成本。

http://www.oracle.com/technetwork/java/index.html

Jaxb是JavaEE的规范.全称Java Architecture for XML Binding. 
可以根据XML Schema产生Java类的技术.JAXB也提供了将XML实例文档反向生成Java对象树的方法,并能将Java对象树的内容重新写到XML实例文档. 
JAXB 2.0是JDK 1.6的组成部分。JAXB 2.2.3是JDK 1.7的组成部分。在实际使用不需要引入新的jar. 

JAXB(Java Architecture for XML Binding)是JSE和JEE平台的一部分,让开发者能够快速完成java类和XML的互相映射。常用的地方就是对象类和xml之间的映射,能够让bo自动生成节点,节点自动转成实体bo。

jax-ws实现WebService

 SAAJ(SOAP with Attachments API for JAVA) SAAJ使用简单,有助于您在Java环境中集成各种Web Service,它扩展了对文档风格的Web Service通信的自然支持(natural support)。SAAJ还支持基于标准接口上的XML消息传递,并且这一点得到了供应商的广泛支持。

StAX是一个基于JAVA API用于解析XML文档,类似SAX解析器的方式。但两种API之间有两个区别

  • StAX是PULL API,其中作为SAX是PUSH API。这意味着如果StAX解析器,客户端应用程序需要询问StAX解析器从XML获取信息它所需要的,但如果是SAX解析器,客户端应用程序需要获取信息时,SAX解析器会通知客户端应用程序的信息是可用的。

  • StAX的API可以读取和写入XML文档。使用SAX API,XML可以是只读的。

Woodstox是一个快速开源且符合StAX(STreaming Api for Xml processing)规范的XML处理器(做为一个处理器意味着它可以处理输入(相当于解析)与输出(相当于写入,序列化))。

StAX (Streaming API for XML)面向流的拉式解析XML,速度快、占用资源少,非常合适处理大数据量的xml文件。http://zuzong.iteye.com/blog/1073358

1、XPP3 也叫 MXP1

XPP —— XML Pull Parser,XPP3是一个非常快的XML解析器,是第三版的XPP。

XPP2是XPP的第二版。  

XML解析方式对比(含XPP3解析)

XPP3是XPP2的继承者,实现了  http://www.xmlpull.org 定义的 XmlPull API 。
XPP3只能用于解析XML,不支持节点树的增加操作。
看到有人做的对比测试,XPP3 比 DOM4J 快6倍,也就是使用了1/6时间。
 

工作流和过程自动化框架 Camunda BPM

Camunda BPM 是一个灵活的工作流和过程自动化框架,它的核心是一个在Java虚拟机内部运行的原生BPMN 2.0流程引擎,因此它可以嵌入到任何Java应用程序或运行时容器中。Camunda BPM与Java EE 6集成,并可以与Spring Framework完美匹配。

Camunda BPM平台还提供了一套丰富的、围绕BPM生命周期的组件:

  • 流程实现和执行组件:camunda engine(负责执行BPMN 2.0流程)、REST API、Spring/CDI集成
  • 流程设计组件:camunda modeler、camunda cycle
  • 流程操作组件:camunda engine、camunda cockpit
  • 人工任务管理组件:camunda tasklist
  • 其他组件:camunda-bpmn.js(完整的BPMN工具包)、camunda BPM incubation(新创意孵化器)

Camunda BPM官方网站:http://camunda.org/
Camunda BPM PHP SDK:http://camunda.github.io/camunda-bpm-php-sdk/
Camunda BPM Examples:https://github.com/camunda/camunda-bpm-examples

aspose利用word模板生成word、PDF

猜你喜欢

转载自www.cnblogs.com/guanghuiqq/p/9226556.html