Jbpm4的IOC容器 - 编程入门网
n />
<timer-session />
<history-session />
</transaction-context>
</jbpm-configuration>
<?xml version="1.0" encoding="UTF-8"?>
<jbpm-configuration xmlns="http://jbpm.org/xsd/cfg">
<process-engine-context>
<repository-service />
<repository-cache />
<execution-service />
<history-service />
<management-service />
<identity-service />
<task-service />
<hibernate-configuration>
<cfg resource="jbpm.hibernate.cfg.xml" />
</hibernate-configuration>
<hibernate-session-factory />
</process-engine-context>
<transaction-context>
<repository-session />
<pvm-db-session />
<job-db-session />
<task-db-session />
<message-session />
<timer-session />
<history-session />
</transaction-context>
</jbpm-configuration>
可以看到配置文件被分为了两部分,分别是:process-engine-context和 transaction-context。在实际应用中,它们分别对应着两个不同的 WireContext:ProcessEngineContext和TransactionConext。 ProcessEngineContext覆盖了jbpm4里最重要的服务类,这些类是全局唯一的, 当然,ProcessEngineContext也是独此一份。本是同根生,命运各不同。 TransactionConext则是在每次openEnvironment时重新创建,因为其包含了数据 库连接和事务。 贯穿于整个Jbpm4中,这两个Context被压到Environment里(Environment和 线程绑定),在任何需要的地方都能提供一条龙的服务。于是,在很多领域类里 ,利用这些服务实现充血模型就是很顺理成章的一件事了。 总结: ProcessEngineContext给引擎领域模型提供全局的组件查找; TransactionConext提供数据库相关服务。 |
凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢! |