【Activiti系列学习】--5.基于源码运行与剖析activiti-app

文本介绍基于Activiti6.0源码,运行与剖析activiti-app

一、编译运行

1.启动activiti-app

cd modules/activiti-ui/activiti-app

2.编译

mvn clean tomcat7:run (因为在activiti-app的pom.xml中配置的是tomcat7)

可以看到启动的是9999端口

3.浏览器中访问(可以看到效果和采用war包部署是一样的)

http://192.168.2.41:9999/activiti-app

 

二、剖析activiti-app

activiti-app在activiti-ui之下

 

conf就是集成的数据源、引擎或者集成的内容等等,logic为真正的业务逻辑(activiti-app是没有前端代码的,只有一些前端的配置和maven依赖jar包的配置,实现了业务的分离和解耦,把不同的层级的内容放在不同的模块里面)

在activiti-ui下面有两个和存储相关的、和图片渲染相关的工程;有两个脚本,用脚本启动的方式和用编译的方式效果一致。start-jrebel为热部署(当修改完java代码的时候,tomcat不用重启,整个编译完的class会应用到应用服务器里面,节省重启tomcat的时间)相关的脚本

 

activiti-app为web程序,从web.xml入手

 

其中的主要配置为一个listener

<listener>

    <listener-class>org.activiti.app.servlet.WebConfigurer</listener-class>

</listener>

三、查看WebConfigurer

Alt+7查看一个类中的所有方法

该类在activiti-app-conf/src/main/java/下面的org.activiti.app.servlet中 

listener会在容器启动的时候执行初始化方法,在容器销毁的时候执行对应的销毁方法。

在初始化方法中,做了容器的双向绑定(Spring容器和servlet容器),然后做了两次初始化容器的方法。

 

在初始化方法中,先注册了一个根容器,然后注册了两个子容器appDispatcher和apiDispatcher 

 

 

销毁方法中,在容器要关闭的时候把对应的容器close掉。

ApplicationConfiguration.java在org.activiti.app.conf目录下面

@PropertySource三个优先级为从低到高,@ComponentScan为扫描包结构

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值