# snakerflow-spring-boot-stater
**Repository Path**: zc-libre/snakerflow-spring-boot-stater
## Basic Information
- **Project Name**: snakerflow-spring-boot-stater
- **Description**: 原项目中是xml文件方式配置bean,snakerflow-spring-boot-stater完全采用springboot方式配置,整合了mybatis-plus,springboot2.3.2 可动态灵活的用yml文件配置,开箱即用。
- **Primary Language**: Unknown
- **License**: Apache-2.0
- **Default Branch**: main
- **Homepage**: None
- **GVP Project**: No
## Statistics
- **Stars**: 10
- **Forks**: 3
- **Created**: 2021-01-21
- **Last Updated**: 2023-12-27
## Categories & Tags
**Categories**: Uncategorized
**Tags**: None
## README
# Introduction
Snaker是一个基于Java的轻量级工作流引擎,适用于企业应用中常见的业务流程。本着轻量、简单、灵巧理念设计,定位于简单集成,多环境支持。
**轻量**: snaker-core.jar大小208K,代码行数约7000行,强大的扩展支持,不依赖于具体的ORM框架
**简单**: 表设计简单,流程组件简单[start/end/task/custom/subprocess/decision/fork/join]
**灵巧**: 暴露大量可扩展接口,支持流程设计器、流程引擎的组件模型自定义
原项目中是xml文件方式配置bean,snakerflow-spring-boot-stater完全采用springboot方式配置,整合了mybatis-plus,springboot2.3.2,摒弃了所有xml配置bean的形式,可动态灵活的用yml文件配置,开箱即用。多种sql执行器、缓存类型动态切换。并扩展了redis类型的缓存模式。
## 1. 快速开始
该项目已同步至maven中央仓库
### 1.1 引入依赖
```xml
com.github.zc-libre
snakerflow-spring-boot-stater
2.0.6
```
### 1.2 配置
```yaml
snaker:
flow:
auto-init-schema: false #是否初始化数据库脚本,默认为false
db-access-type: mybatis_plus #sql执行器类型 可选 jdbc、spring、mybatis_plus。默认为jdbc
expression-type: juel #决策表达式类型 可选juel和spel。默认为juel
cache:
cache-type: redis #缓存类型 可选内存、ehcache、redis
# 缓存类型为redis情况下,如下属性可进行配置
spring:
cache:
type: redis
redis:
key-prefix: "snaker::"
time-to-live: 1h
```
注:1. DBAccess使用mybatis-plus模式需配置mybatis-plus的分页插件。
2.缓存类型为redis情况下,需要引入redis依赖
```xml
org.springframework.boot
spring-boot-starter-data-redis
```
项目使用文档:https://zc-libre.github.io/snaker-doc/
国内文档地址:https://zc-libre.gitee.io/snaker-doc/
有问题欢迎交流,本项目对你有用的话,欢迎star。有问题请加 QQ: 504879189