创建Spring Boot项目
首先打开你喜欢的 IDE,新建一个空的Maven项目,本次的案例是“贷款审批”,所以项目名命名为loan-approval-spring-boot
,groupId为org.example
也可以使用命令行创建
mvn archetype:generate -DgroupId=org.example -DartifactId=loan-approval-spring-boot -Dversion=1.0-SNAPSHOT -DarchetypeArtifactId=maven-archetype-quickstart -DinactiveMode=false
配置Maven依赖
接下来添加 Maven 依赖,Maven依赖需要添加到项目根目录下的 pom.xml
文件中。我们需要将 Spring Boot 依赖添加到 “dependency management” 中,然后将 Camunda Spring Boot Starter 添加为依赖,这将提供 Camunda 流程引擎和自带的 WebApp ;为简单起见,数据库使用嵌入式H2数据库;最后添加 spring-boot-maven-plugin
,它会将Spring Boot项目打包在一起。最终完成后效果如下:
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>org.example</groupId>
<artifactId>loan-approval-spring-boot</artifactId>
<version>1.0-SNAPSHOT</version>
<properties>
<camunda.spring-boot.version>7.15.0</camunda.spring-boot.version>
<spring-boot.version>2.4.4</spring-boot.version>
<maven.compiler.source>1.8</maven.compiler.source>
<maven.compiler.target>1.8</maven.compiler.target>
</properties>
<dependencyManagement>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-dependencies</artifactId>
<version>${spring-boot.version}</version>
<type>pom</type>
<scope>import</scope>
</dependency>
</dependencies>
</dependencyManagement>
<dependencies>
<dependency>
<groupId>org.camunda.bpm.springboot</groupId>
<artifactId>camunda-bpm-spring-boot-starter-webapp</artifactId>
<version>${camunda.spring-boot.version}</version>
</dependency>
<dependency>
<groupId>com.h2database</groupId>
<artifactId>h2</artifactId>
</dependency>
<dependency>
<groupId>com.sun.xml.bind</groupId>
<artifactId>jaxb-impl</artifactId>
<version>2.2.3</version>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<version>${spring-boot.version}</version>
<configuration>
<layout>ZIP</layout>
</configuration>
<executions>
<execution>
<goals>
<goal>repackage</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
</project>
为项目添加主类
接下来,我们将为应用添加可以运行的主类,在 src/main/java
下新建一个类,类名为WebappExampleProcessApplication
,包名为 org.example.loanapproval
如果使用命名行创建项目,会存在一个自带的
App.java
主类 ,这个不需要,删除即可
Spring Boot的主类需要添加 @SpringBootApplication
注解,最后完成的效果如下:
package org.example.loanapproval;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
@SpringBootApplication
public class WebappExampleProcessApplication {
public static void main(String... args) {
SpringApplication.run(WebappExampleProcessApplication.class, args);
}
}
到此第一部分结束,如果想直接获取到现在为止的进度,可以下载zip包,或者使用如下命令
git clone https://gitee.com/zoollcar/camunda-get-started-spring-boot-and-dmn.git git checkout -f Step-1
配置项目
Camunda Spring Boot 自带了最佳实践配置,这些配置会在启动时自动启用,如果要覆盖部分配置,可以在 resources 中新增 application.yaml
或application.properties
,默认配置的具体内容可以查看 https://docs.camunda.org/manual/latest/user-guide/spring-boot-integration/configuration/#camunda-engine-properties
自定义管理员账户
让我们在 src/main/resources
下创建 application.yaml
文件,输入如下内容:
camunda.bpm:
admin-user:
id: demo
password: demo
firstName: Demo
filter:
create: All tasks
以上配置将使用 demo 作为管理员用户名密码,在Tasklist
中添加 All tasks
过滤器
编译运行
IDE通常有工具可以直接编译运行,使用工具运行即可
也可以使用命令行运行:
mvn package
java -jar target/loan-approval-spring-boot-1.0-SNAPSHOT.jar
运行后打开浏览器访问:http://localhost:8080/ ,会自动打开登录界面,可以使用 demo/demo 登录,然后打开 Tasklist,可以看到 “All tasks”也被创建出来了。
到此第二部分结束,如果想直接获取到现在为止的进度,可以下载zip包,或者使用如下命令
git clone https://gitee.com/zoollcar/camunda-get-started-spring-boot-and-dmn.git git checkout -f Step-2