activiti6.0学习笔记(一)_activity_v6evps0toj8-程序员宅基地

技术标签: java  activiti  mysql  

参考:1:https://activiti.gitbook.io/activiti-7-developers-guide/getting-started

           2:https://blog.csdn.net/gaojingyuan/article/details/78979716

一:准备环境:

我的环境:jdk1.8.0_112

                intellij2018.2.2

               actiBPM插件: 3.E-8

               mysql:5.7.24

二:相关配置:

1:新建maven项目

intellij->file->new->project

接下来填写项目的名称,选择路径就可以了(这里创建普通的maven工程就可以了)

2:相关配置

2.1在pom.xml中引入一下依赖

<?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>com.activiti-demo</groupId>
    <artifactId>activiti-demo</artifactId>
    <version>1.0-SNAPSHOT</version>
    <dependencies>
        <dependency>
            <groupId>org.activiti</groupId>
            <artifactId>activiti-engine</artifactId>
            <version>6.0.0</version>
        </dependency>
        <dependency>
            <groupId>org.slf4j</groupId>
            <artifactId>slf4j-api</artifactId>
            <version>1.7.21</version>
        </dependency>
        <dependency>
            <groupId>org.slf4j</groupId>
            <artifactId>slf4j-log4j12</artifactId>
            <version>1.7.21</version>
        </dependency>
        <dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
            <version>6.0.6</version>
        </dependency>
    </dependencies>

</project>

2.2编写日志输出的配置文件:log4j.properties,内容如下:

log4j.rootLogger=DEBUG, ACT
log4j.appender.ACT=org.apache.log4j.ConsoleAppender
log4j.appender.A1.Encoding=UTF-8
log4j.appender.ACT.layout=org.apache.log4j.PatternLayout
log4j.appender.ACT.layout.ConversionPattern= %d{hh:mm:ss,SSS} [%t] %-5p %c %x - %m%n

2.3配置数据库连接

2.3.1通过java类进行配置:

// 引擎配置
ProcessEngineConfiguration cfg = new StandaloneProcessEngineConfiguration()
        .setJdbcUrl("jdbc:mysql://localhost:3306/activiti").setJdbcUsername("yourusername")
        .setJdbcPassword("yourpassword")
        .setJdbcDriver("com.mysql.jdbc.Driver")
        .setDatabaseSchemaUpdate(ProcessEngineConfiguration.DB_SCHEMA_UPDATE_TRUE);
// 获取流程引擎对象
ProcessEngine processEngine = cfg.buildProcessEngine();

2.3.2通过activiti.cfg.xml进行配置(利用spring的依赖注入)

activiti.cfg.xml:

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       xsi:schemaLocation="http://www.springframework.org/schema/beans   http://www.springframework.org/schema/beans/spring-beans.xsd">

    <bean id="processEngineConfiguration" class="org.activiti.engine.impl.cfg.StandaloneProcessEngineConfiguration">
        <property name="jdbcUrl" value="jdbc:mysql://localhost:3306/activiti"/>
        <property name="jdbcDriver" value="com.mysql.jdbc.Driver"/>
        <property name="jdbcUsername" value="yourusername"/>
        <property name="jdbcPassword" value="yourpassword"/>
        <property name="databaseSchemaUpdate" value="true"/>
    </bean>

</beans>

启动类的编写Entra.java

package com.demo;

import org.activiti.engine.ProcessEngineConfiguration;

/**
 * @Auther: JohnDoeo
 * @Date: 2018/12/7 22:01
 * @Description:
 */
public class Entra {
    public static void main(String[] args){
        ProcessEngineConfiguration cfg = ProcessEngineConfiguration.createProcessEngineConfigurationFromResource("activiti.cfg.xml");
        cfg.buildProcessEngine();
    }
}

此处需要注意一个问题,我在启动的时候报了一个错误:

The server time zone value '�й���׼ʱ��' is unrecognized

看得出来这是时区的值无法识别,所以我有看了一些博客,找到第一种解决办法(然而并没有解决问题)

https://blog.csdn.net/qq_32623363/article/details/80922704,就是这篇博客,就是在数据库连接的url后面添加一下代码:

?useUnicode=true&amp;useJDBCCompliantTimezoneShift=true&amp;useLegacyDatetimeCode=false&amp;aserverTimezone=UTC

所以又看了几篇博客,终于在下面的哥们的博客中找到了解决办法:

https://blog.csdn.net/weixin_38361347/article/details/82751210

他的解决办法是直接在数据库修改时区(在数据库执行一下代码即可)

set global time_zone = '+8:00'; ##修改mysql全局时区为北京时间,即我们所在的东8区
  set time_zone = '+8:00'; ##修改当前会话时区
  flush privileges; #立即生效

执行结果

又发现一个问题,就是执行以上代码后,若下次重新启动后不执行以上代码还会报以上的错误??????

3:执行入口类(在执行此入口类之前要先确认数据库中已经有配置文件指定的数据库):

如果看到控制台有输出一些建表语句如下:

然后我们就可以在数据库中看到我们的activiti数据库中多出了28张表(以前有的版本是24张表的)

ok!收工。

 

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/qq_40930491/article/details/84888193

智能推荐

计算机毕业设计Java高校招生管理系统(源码+系统+mysql数据库+Lw文档)_考试招生录取系统伪代码-程序员宅基地

文章浏览阅读533次。计算机毕业设计Java高校招生管理系统(源码+系统+mysql数据库+Lw文档)前端技术:Layui、HTML、CSS、JS、JQuery等技术。JSP健身俱乐部网站设计与实现sqlserver和mysql。ssm基于javaweb开发数码产品推荐平台系统设计与实现。ssm基于HTML的“牧经校园疫情防控网站”的设计与实现。JSP计算机C语言学习网站的设计与实现sqlserver。JSP酒店餐饮管理系统的设计与实现sqlserver。springboot体育馆预定管理平台的设计与实现。_考试招生录取系统伪代码

RecyclerView GridLayoutManager 自适应宽高_gridlayoutmanager 自适应宽度-程序员宅基地

文章浏览阅读8.7k次,点赞2次,收藏2次。import android.content.Context;import android.support.v7.widget.GridLayoutManager;import android.support.v7.widget.RecyclerView;import android.util.TypedValue;/** * Created by Administrator on 2_gridlayoutmanager 自适应宽度

浅谈实时流平台Kafka的消息系统设计_kafka实时方案-程序员宅基地

文章浏览阅读1.2k次。Many users of Kafka process data in processing pipelines consisting of multiple stages, where raw input data is consumed from Kafka topics and then aggregated, enriched, or otherwise transformed into ..._kafka实时方案

计算机控制闪光灯,摄影技巧 闪灯篇 光圈控制主体 快门控制场景 闪光灯又该如何调整输出功率?...-程序员宅基地

文章浏览阅读469次。先设定相机,后设定闪光灯。在离机闪领域,M 模式是应用上的大宗。在拍摄时,我们会面临两个问题,一个是闪光灯的出力(输出功率),另一个则是相机的测光、曝光设定。基本上,我们是先决定相机的设定值,再决定闪光灯的出力问题。先参考环境光,再考虑闪光灯。思考一下:在闪光灯未触发时,相机的设定值本身不能让主体过曝!当主体已过曝,那么闪光灯进来时,结果还是过曝!但如果主体曝光不足,我们就用闪灯将他补足光线。如何..._光圈控制主体的明暗

.Net Core5.0 上传文件报错413 Request Entity Too Large_.net core 413 request entity too large-程序员宅基地

文章浏览阅读612次。开发环境:.Net Core 5.0 + MVC 进行开发.Net Core5.0 上传文件报错413 Request Entity Too Large_.net core 413 request entity too large

pythoninstaller打包 其他电脑无法运行_新手初学 py 后用 pyinstaller 打包程序后运行 exe 出现问题...-程序员宅基地

文章浏览阅读450次。用 python3.6 制作了个爬虫。在 pycham 里能正常运行,用了 requests,beautifulsoup,pandas,json,re,datetime 等第三方库但是 pyinstaller 打包完成没什么问题,运行 exe 程序就出现了错误:源码地址: https://gitee.com/rufengkj/zwu_educational_system/blob/master/s..._pyinstaller打包后别人的电脑不运行

随便推点

html中点击图标变色,AngularJS实现按钮提示与点击变色效果-程序员宅基地

文章浏览阅读809次。本文用angularJS简单实现了一个小的按钮提示,按钮点击后会变色,注意html文件中需要引入jquery.js和angular.js运行截图:当点击按钮的时候 按钮的样式改变:css代码:*{margin: 0px;padding: 0px;}.bucSelectedButton{width: 100px;line-height: 30px;text-align: center;positio..._html点击一个按钮以后按钮变色

linux上清空一个文件,技术|Linux 下清空或删除大文件内容的 5 种方法-程序员宅基地

文章浏览阅读1.7k次。在 Linux 终端下处理文件时,有时我们想直接清空文件的内容但又不必使用任何 Linux 命令行编辑器 去打开这些文件。那怎样才能达到这个目的呢?在这篇文章中,我们将介绍几种借助一些实用的命令来清空文件内容的方法。注意:在我们进一步深入了解这些方法之前,请记住: 由于在 Linux 中一切皆文件,你需要时刻注意,确保你将要清空的文件不是重要的用户文件或者系统文件。清空重要的系统文件或者配置文件可...

定点数的加减运算及实现_定点数的实现-程序员宅基地

文章浏览阅读2k次。求补运算:将原码包括符号位在内每一位取反,末位加1。补码加减运算方法:[X+Y]补=[X]补+[Y]补[X−Y]补=[X]补+[−Y]补\begin{aligned}[X+Y]_补&=[X]_补+[Y]_补\\[X-Y]_补&=[X]_补+[-Y]_补\end{aligned}[X+Y]补​[X−Y]补​​=[X]补​+[Y]补​=[X]补​+[−Y]补​​使用补码进行加减运算,符号位和数值位一样参加运算;补码的减法可以用加法来实现,任意两数之差的补码等于被减数的补码与减_定点数的实现

蒲公英 · JELLY技术周刊 Vol.06: Deno 1.0 发布前瞻,“真香定律”能否再现_在影片的不同阶段,鼠标交互有不同的效果,非常巧妙地将 web 技术与影片叙事结合到-程序员宅基地

文章浏览阅读849次。登高远眺天高地迥,觉宇宙之无穷基础技术Deno 1.0 即将发布,你需要知道的都在这里了Deno——来自 Node 之父 Ryan Dahl 的最新力作,在开源 2 年之际,终于将迎来 1.0 的正式版本。Deno 并不是 Node 的替代品,根据 Deno GitHub 官网上的介绍,Deno 是一款通用的 JavaScript/TypeScript 编程环境,它汇集了许多最出色的开源技术,并使用一个很小的可执行文件提供了全面的解决方案。如今的 Deno,基于 Rust,内置了 TypeS._在影片的不同阶段,鼠标交互有不同的效果,非常巧妙地将 web 技术与影片叙事结合到

mysql报错1708_mysql的AB及读写和集群-程序员宅基地

文章浏览阅读60次。Mysql的AB及读写第1章 Mysql的AB配置1.1 master配置1.2slave配置1.2.1 192.168.13.1901.2.2 192.168.13.1911.2.3 192.168.13.1921.2.4 192.168.13.1931.2.4 192.168.13.189第2章 读写分离2.1安装mycat2.1.1 server.xml2.1.1 schema.xml2..._hy000 1708

解决树莓派3B+:只有红灯常亮绿灯不亮_树莓派启动不了,绿灯一直不亮-程序员宅基地

文章浏览阅读1w次,点赞2次,收藏10次。一句话总结本文解决方法:可能是烧录软件有问题,使用Etcher烧录后,可正常开机;以下为解决该问题过程:最近重新给树莓派3B+安装系统,按照之前的方法往SD卡烧录系统:烧录方法:1 .SDFormatter格式化SD卡; 2.Win32DiskImager负责写入系统;接通电源后只有红灯亮,绿灯不亮,查询文章和问答,基本没有很好的解决这个问题:文章和问答常见总结:SD卡有问题,或者树莓派坏了;继续查找问题,知知乎上这篇文章如何给树莓派安装操作系统 - 知乎介绍安装SD卡的_树莓派启动不了,绿灯一直不亮