Activiti整合到springMVC專案的詳細配置
注:本次教程全部在Activiti-5.16.4版本下測試通過
首先需要配置好springMVC的專案,這裡就不再贅述,(有時間也會寫一個springMVC簡單教程),即在springMVC原有專案上新增Activiti工作流配置。
一、新增所需jar包
從官網上下載對應的版本,在裡面找到Activiti所需jar包,這裡我添加了Activiti提供的11個jar,分別為:
activiti-bpmn-converter-5.16.4.jar
activiti-bpmn-layout-5.16.4.jar
activiti-bpmn-model-5.16.4.jar
activiti-common -rest-5.16.4.jar
activiti-engine-5.16.4.jar
activiti-image-generator-5.16.4.jar
activiti-json-converter-5.16.4.jar
activiti-process-validation-5.16.4.jar
activiti-rest-5.16.4.jar
activiti-simple-workflow-5.16.4.jar
activiti-spring-5.16.4.jar
同時也需要如下5個jar包,
mybatis-3.2.5.jar
slf4j-api-1.7.6.jar
slf4j-log4j12-1.7 .6.jar
commons-lang3-3.3.2.jar
joda-time-2.1.jar
全部拷貝到WEB-INF/lib目錄下即可。
二、新增spring配置資訊
在WEB-INF/applicationContext.xml配置檔案中,新增如下程式碼:
<!-- spring負責建立流程引擎的配置檔案 -->
<bean id="processEngineConfiguration" class="org.activiti.spring.SpringProcessEngineConfiguration">
<!-- 資料來源 -->
<property name="dataSource" ref="dataSource2" />
<!-- 配置事務管理器,統一事務 -->
<property name="transactionManager" ref="transactionManager" />
<!-- 設定建表策略,如果沒有表,自動建立表 -->
<property name="databaseSchemaUpdate" value="true" />
<!-- 是否啟動jobExecutor -->
<!-- <property name="jobExecutorActivate"value="false" /> -->
</bean>
<!-- 建立流程引擎物件 -->
<bean id="processEngine" class="org.activiti.spring.ProcessEngineFactoryBean">
<property name="processEngineConfiguration" ref="processEngineConfiguration" />
</bean>
<!-- 建立activiti提供的各種服務 -->
<!-- 工作流倉儲服務 -->
<bean id="repositoryService" factory-bean="processEngine" factory-method="getRepositoryService" />
<!-- 工作流執行服務 -->
<bean id="runtimeService" factory-bean="processEngine" factory-method="getRuntimeService" />
<!-- 工作流任務服務-->
<bean id="taskService" factory-bean="processEngine" factory-method="getTaskService" />
<!-- 工作流歷史資料服務-->
<bean id="historyService" factory-bean="processEngine" factory-method="getHistoryService" />
<!-- 工作流管理服務-->
<bean id="managementService" factory-bean="processEngine" factory-method="getManagementService" />
<bean id="formService" factory-bean="processEngine" factory-method="getFormService" />
<!-- 工作流唯一服務 -->
<!-- <bean id="IdentityService"factory-bean="processEngine"factory-method="getIdentityService"/> -->
解釋:
其中dataSource2為activiti資料庫(將在第三步詳細介紹),建議單獨管理,這樣可以避免跟業務資料庫中資料產生衝突,也方便流程資料的管理,只需再定義一個新的資料來源即可,如下:
<bean id="dataSource2" class="org.springframework.jdbc.datasource.DriverManagerDataSource">
<property name="driverClassName" value="com.mysql.jdbc.Driver"></property>
<property name="url" value="jdbc:mysql://localhost:3306/activiti?createDatabaseIfNotExist=true&useUnicode=true&characterEncoding=utf-8&zeroDateTimeBehavior=convertToNull&transformedBitIsBoolean=true"></property>
<property name="username" value="root"></property>
<property name="password" value=""></property>
</bean>
其中transactionManager為spring統一事務管理,如果你使用的是Hibernate,定義如下:
<bean id="transactionManager" class="org.springframework.orm.hibernate4.HibernateTransactionManager">
<property name="sessionFactory" ref="sessionFactory"></property>
</bean>
如果使用的是spring-jpa,定義如下:
<bean id="transactionManager"
class="org.springframework.orm.jpa.JpaTransactionManager">
<property name="entityManagerFactory"
ref="entityManagerFactory" />
</bean>
三、建立activiti資料庫
從官網下載並解壓的檔案中找到database檔案下的各類資料庫指令碼,這裡用的是mysql資料庫,所以把其中mysql的指令碼拷貝出來,新建一個mysql資料庫,名為activiti,分別執行
activiti.mysql.create.engine.sql
activiti.mysql.create.identity.sql
activiti.mysql.create.history.sql
這三個sql指令碼,它們分別建立了12張、4張、8張表,共24張表格,請核對是否全部建立成功。
注:可能是因為mysql版本或者其它原因,建立datetime格式的欄位時不能有長度定義,所以需要把上述三個sql指令碼中的datetime(3)改為datetime,另外把activiti.mysql.create.engine.sql中的CURRENT_TIMESTAMP(3)改為CURRENT_TIMESTAMP
四、單元測試
public static void main(String[] args) {
// 1.建立Activiti配置物件的例項
ProcessEngineConfiguration configuration = ProcessEngineConfiguration
.createStandaloneProcessEngineConfiguration();
// 2.設定資料庫連線資訊
// 設定資料庫地址
configuration
.setJdbcUrl("jdbc:mysql://localhost:3306/activiti?createDatabaseIfNotExist&useUnicode=true&characterEncoding=utf8");
// 資料庫驅動
configuration.setJdbcDriver("com.mysql.jdbc.Driver");
// 使用者名稱
configuration.setJdbcUsername("root");
// 密碼
configuration.setJdbcPassword("");
// 設定資料庫建表策略
/**
* DB_SCHEMA_UPDATE_TRUE:如果不存在表就建立表,存在就直接使用
* DB_SCHEMA_UPDATE_FALSE:如果不存在表就丟擲異常
* DB_SCHEMA_UPDATE_CREATE_DROP:每次都先刪除表,再建立新的表
*/
configuration.setDatabaseSchemaUpdate(ProcessEngineConfiguration.DB_SCHEMA_UPDATE_TRUE);
// 3.使用配置物件建立流程引擎例項(檢查資料庫連線等環境資訊是否正確)
ProcessEngine processEngine = configuration.buildProcessEngine();
System.out.println(processEngine);
}
執行無異常即說明Activiti已整合到springMVC中。
相關推薦
SpringMVC整合Freemarker的詳細配置步驟
FreeMarker是一個用Java語言編寫的模板引擎,它基於模板來生成文字輸出。FreeMarker與Web容器無關,即在Web執行時,它並不知道Servlet或HTTP。它不僅可以用作表現層的實現技術,而且還可以用於生成XML,JSP或Java 等。 FreeMarke
建立SpringMVC專案及配置檔案(配置式)
配置式(不使用註解):在springmvc的配置檔案中,使用標籤建立物件 步驟: 1.新建 web 專案 2.匯入jar包: 1)spring的核心jar:spring-beans.jar,spring-core.jar,spring-context.jar,s
JAVA實用操作(一)IDEA用maven建立springMVC專案和配置
最近做使用者畫像需要使用API的方式訪問hbase表,這裡構建使用java web專案使用java語言進行API開發,這裡簡單回顧下java web的構建方式。 一.回顧建立SpringMVC Spring MVC 框架在 Java 的 Web 專案中應該是無人
SpringMVC專案中配置xml時一些和名稱空間相關的問題,如mvc:annotation-driven的字首 "mvc"未繫結
Q1.元素 "mvc:annotation-driven" 的字首 "mvc"未繫結 辦法:在spring-servlet.xml檔案裡使用<mvc>開頭的標籤時,忘記引入了名稱空間。在xml的beans裡面加入如下程式碼即可 xmlns:mvc="http:
IDEA用maven建立springMVC專案和配置(XML配置和Java配置)
這段時間在學習javaweb的一些知識,然後接觸到了springmvc框架。框架的建立和配置一直是新手入門的一個難題,所以我就寫一下我的配置過程,以供參考,另外因為spring4的新特性可以用java來配置,網上相關資料較少,所以我參考了很多博文後,把xml和j
Activiti整合到spring中配置
1、匯入activiti相應的jar包 使用用maven,在pox.xml中配置 <dependency> <groupId>org.activiti</groupId>
IDEA用maven建立springMVC專案和配置(XML配置和Java配置)(修正版)
這段時間在學習javaweb的一些知識,然後接觸到了springmvc框架。框架的建立和配置一直是新手入門的一個難題,所以我就寫一下我的配置過程,以供參考,另外因為spring4的新特性可以用java來配置,網上相關資料較少,所以我參考了很多博文後,把xml和java兩種配置方式都試了一下。 工具準備:
Step by Step 搭建SpringMVC專案[3]-配置SpringMVC環境
裝飾基礎專案 Web專案轉Maven專案 想要使用Maven管理我們的專案,就需要將我們的專案轉換一下。當然也可以直接下載jar包放到專案內。不過為了多學習一些就不要省事兒了。 右鍵專案--》Configurae--》Convert to Maven Pro
springboot 整合eureka 超詳細配置(轉載)
開發十年,就只剩下這套架構體系了! >>>
Java Activiti(11)---整合到springMVC專案的詳細配置
一、新增所需jar包 從官網上下載對應的版本,在裡面找到Activiti所需jar包,這裡我添加了Activiti提供的11個jar,分別為: activiti-bpmn-converter-5.16.4.jar activiti-bpmn-layout-5
Activiti整合到springMVC專案的詳細配置
注:本次教程全部在Activiti-5.16.4版本下測試通過 首先需要配置好springMVC的專案,這裡就不再贅述,(有時間也會寫一個springMVC簡單教程),即在springMVC原有專案上新增Activiti工作流配置。 一、新增所需jar包
maven中spring+springmvc+mybatis整合詳細配置
首先配置mybatis,可以參考這篇部落格的前期基礎配置使用。 https://blog.csdn.net/qq_41520636/article/details/84146699 下面配置結構: 需要的jar,在pom.xml中引入 <!--統一j
springmvc 專案完整示例04 整合mybatis mybatis所需要的jar包 mybatis配置檔案 sql語句 mybatis應用
百度百科: MyBatis 本是apache的一個開源專案iBatis, 2010年這個專案由apache software foundation 遷移到了google code,並且改名為MyBatis 。2013年11月遷移到Github。 iBATIS一詞來源於“internet”和“abatis”
springmvc 專案完整示例06 日誌–log4j 引數詳細解析 log4j如何配置
Log4j由三個重要的元件構成: 日誌資訊的優先順序 日誌資訊的輸出目的地 日誌資訊的輸出格式 日誌資訊的優先順序從高到低有ERROR、WARN、 INFO、DEBUG,分別用來指定這條日誌資訊的重要程度; 日誌資訊的輸出目的地指定了日誌將列印到控制檯還是檔案中; 而輸出格式則控制了日誌資訊的顯
springmvc 專案完整示例05 日誌 --log4j整合 配置 log4j屬性設定 log4j 配置檔案 log4j應用
log4j 就是log for java嘛,老外都喜歡這樣子,比如那個I18n ---internationalization 不就是i和n之間有18個字母... 直接入正題 他是一個強大的日止功能元件 想要用他,根把大象放到冰箱裡面一樣多 1,下載一個jar包,放到專案中去 2,搞一個配
springmvc 專案完整示例07 設定配置整合springmvc springmvc所需jar包springmvc web.xml檔案配置
前面主要是後臺程式碼,spring以及mybatis的整合 下面主要是springmvc用來處理請求轉發,展現層的處理 之前所有做到的,完成了後臺,業務層和持久層的開發完成了 接下來就是展現層了 有很多的mvc框架,這裡我們用springMVC 首先還是需要jar包 我們既然是web專案了
Activiti-5.18.0與springMvc專案整合和activiti-explorer單獨部署Web專案並與業務資料庫關聯方法(AutoEE_V2實現方式)
Activiti-5.18.0與springMvc專案整合和 activiti-explorer單獨部署Web專案並與業務資料庫關聯方法 (AutoEE實現方式) Double_AutoEE 2015-10-15 AutoEE-自動智慧快速開發
SSM框架Spring+SpringMVC+MyBatis——詳細整合教程
servle aps files framework l數據庫 建立 blank onf pin 摘要: 包括SQL Maps和Data Access Objects(DAO)MyBatis 消除了幾乎所有的JDBC代碼和參數的手工設置以及結果集的... 摘要:
spring boot整合mybatis深坑之c3p0的詳細配置
text context ati reat source ast type fig oot 項目地址:https://gitee.com/zhangjunqing/spring-boot/tree/master/springboot-mybatis-notice 本人在c3
IDEA整合日誌框架Log4j2+Slf4j詳細配置過程
info 信息 mon 文件路徑 留言 nbsp time 檢測 之間 日誌框架這麽多,他們之間到底是什麽關系呢?籠統的講就是slf4j是一系列的日誌接口,而log4j2、logback是具體實現了接口功能的日誌框架。現在的主流日誌接口都使用slf4j,而日誌的實現就見仁見