Activiti7工作流+Springboot快速入门

序:相信很多小伙伴和我一样,很想入门activiti工作流,但是无耐 版本更新太快,网上资料鱼龙混杂,翻来覆去竟找不到一篇有点干货的文章,好了,废话不多说,先上效果,如不满意,直接关闭,节省大家时间  

实例:

1.小明新建了一个请假流程,请假25天,启动该流程后,下一步经过排他网关,到达并行网关1号,然后将流程转到主任和老师

Activiti7工作流+Springboot快速入门_第1张图片

2.老师审批通过后,小明查看流程 如下

Activiti7工作流+Springboot快速入门_第2张图片

3.最终走完是这个样子

Activiti7工作流+Springboot快速入门_第3张图片

同时驳回效果是这个样子:

Activiti7工作流+Springboot快速入门_第4张图片

怎么样各位小伙伴,您满意吗,现在可以往下看了。

本工程主要采用的技术栈:(都很新、很前沿 ,有木有

后端

  1. Springboot       版本 :2.1.5.RELEASE  
  2. activiti7             版本 :7.1.0.M1
  3. Mybatis-Plus    版本  :3.1.1
  4. Shiro                版本: 1.3.2

前端采用

  1. 开源框架 layui模板  ok-admin  (文章最后都会给出链接)
  2. 流程设计器采用最新的 bpmn-js 

先说说后端吧,因为activiti7 集成的东西太多了,默认mybatis 作为持久层与数据库进行交互,默认使用security来控制权限,因为我们本工程使用的shiro ,所以要配置一下,让security的拦截全部放行就可以了。

@Configuration
@EnableWebSecurity
public class SecurityConfig extends WebSecurityConfigurerAdapter {

        @Override
        public void configure(HttpSecurity http) throws Exception {

            http.authorizeRequests()
                    .anyRequest().permitAll().and().logout().permitAll()//配置不需要登录验证
                    .and().headers().frameOptions().sameOrigin() // 解决  frame because it set 'X-Frame-Options' to 'deny'
                    .and().csrf().disable() //关闭跨站请求伪造
            ;
        }
}

Activiti7可以使用的设计器

     要想非常方便的使用Activiti7框架,则必须要安装流程设计器插件,关于Activiti7流程设计器相关插件说明如下:

  • activiti6 官方提供有Web设计器(Modeler设计器)。这个不需要进行安装,直接部署运行activiti-modeler模块即可使用。
  • 官方提供有Eclipse开发工具流程插件。
  • 官方提供有IntelliJ IDEA开发工具相关的流程插件(plugin 里面搜索 actiBPM 即可)

     由于Activiti7新团队将开发重心放到了云Bpmn上,所以对于上述的几个流程设计器都不在进行维护。对于Eclipse开发工具的流程插件止步不前,几乎停滞更新和维护。这样就导致了开发人员使用Eclipse或者IntelliJ IDEA开发工具的流程插件有如下几个风险:

  •  Activiti7.x版本中的新增特性、新功能无法使用。
  •  使用Activiti流程插件绘制的流程不一定完全可以在Activiti7框架中运行。
  •  Activiti流程插件(该插件对准的是5.x版本)。
  •  使用IntelliJ IDEA开发工具的读者可以安装Activiti流程插件(actibpm)进行开发。但是无法享受Activiti7.x版本带来的的新功能。

Activiti7推荐使用的设计器


     Activiti7开发团队已经完全抛弃了IntelliJ IDEA/Eclipse中的流程插件以及Modeler设计器。开始使用了bpmn.io提供的bpmn-js设计

效果:

Activiti7工作流+Springboot快速入门_第5张图片

 对了,最终的pom 贴一下,供大家参考:



    4.0.0
    
    
        org.springframework.boot
        spring-boot-starter-parent
        
        2.1.5.RELEASE
         
    
    com.bzgwl
    mybatis_plus
    0.0.1-SNAPSHOT
    mybatis_plus
    Demo project for Spring Boot

    
        1.8
        3.1.1
    
    

        
            org.springframework.boot
            spring-boot-starter
        

        
            org.springframework.boot
            spring-boot-starter-web
        

        
            org.springframework.boot
            spring-boot-starter-test
            test
        

        
        
            com.baomidou
            mybatis-plus-boot-starter
            3.1.1
        

        
        
            com.baomidou
            mybatis-plus-generator
            ${mybatisplus.version}
        


        
        
            org.springframework.boot
            spring-boot-starter-thymeleaf
            
        


        
        
            net.sourceforge.nekohtml
            nekohtml
            1.9.22
        

        
        
            mysql
            mysql-connector-java
            5.1.46
            
            
            runtime
        

        
        
            org.projectlombok
            lombok
            1.16.16
        

        
        
            org.springframework.boot
            spring-boot-starter-freemarker
        

        
            junit
            junit
            test
        

        
        
            com.alibaba
            fastjson
            1.2.15
        

        
        
        
            org.apache.shiro
            shiro-spring
            1.3.2
        

        
            org.apache.shiro
            shiro-ehcache
            1.2.4
        

        
        
        
            com.github.theborakompanioni
            thymeleaf-extras-shiro
            2.0.0
        

        
        
            org.springframework.boot
            spring-boot-devtools
            true
        

        

        
            org.activiti
            activiti-spring-boot-starter
            7.1.0.M1
            
                
                    mybatis
                    org.mybatis
                


            
        

        
            org.springframework.boot
            spring-boot-starter-thymeleaf
        

    

    
        
            
                org.springframework.boot
                spring-boot-maven-plugin
                
                    
                        
                            repackage
                        
                    
                
                
                    
                    true
                
            

        
    


源码分享地址:https://gitee.com/logwto/mybatis_plus(各位小伙伴,不求捐赠,只求一赞就是对我最大的支持!!)

站在巨人的肩膀上(鸣谢):


分享牛:https://blog.csdn.net/qq_30739519/article/details/92578594

ok-admin模板:

  1. 演示地址:http://ok-admin.xlbweb.cn/
  2. git源码地址:https://gitee.com/bobi1234/ok-admin (注意切换到2.0最新分支)

bpmn-io :https://bpmn.io/toolkit/bpmn-js/examples/

 

 

你可能感兴趣的:(activiti7,activiti7)