学习资料:<Activiti实战> 第七章  Spring容器集成应用实例(五)普通表单 第六章中介绍了动态表单.外置表单.这里讲解第三种表单:普通表单. 普通表单的特点: 把表单内容写在表现层(JSP.JSF.HTML)文件中 一个用户任务对应一个页面 业务数据和流程数据分离 适用于业务相对固定但复杂.流程相对固定但表现层变化多的情况 因为普通表单中,业务数据和流程数据是分离的,所以存在统一事务管理的问题.要保证Activiti和业务数据操作在同一个事务中执行.前面集成Spring时的事务管…
学习资料:<Activiti实战> 第七章 Activiti与容器集成 本章讲解activiti-spring可以做的事情,如何与现有系统集成,包含bean的注入.统一事务管理等. 7.1 流程引擎工厂 7.1.1 ProcessEngine 创建processEngine的方法有三种: 通过配置文件 测试中通过ActivitiRule 通过ProcessEngines类 7.1.2 ProcessEngineFactory 与spring集成的目的有两个: 通过spring统一管理Proce…
学习资料:<Activiti实战> 第六章 任务表单(二)外置表单 6.3 外置表单 考虑到动态表单的缺点(见上节),外置表单使用的更多. 外置表单的特点: 页面的原样显示 字段值的自动填充 6.3.1 流程定义 (1)form文件 leave-start.form作为示例展示(字段要和后面代码中variables变量的key互相对应): <div class="control-group"> <label class="control-labe…
学习资料:<Activiti实战> 第六章 任务表单(一)动态表单 内容概览:本章要完成一个OA(协同办公系统)的请假流程的设计,从实用的角度,讲解如何将activiti与业务紧密相连. 第四章中讲解了两种表单:动态表单和外置表单的区别.这里将使用不同的表单来完成相同的功能. 动态表单:<activiti:formProperty> 外置表单:<activiti:formKey> 6.1 动态表单…
学习资料:<Activiti实战> 第五章 用户与组及部署管理(三)部署流程及资源读取 内容概览:如何利用API读取已经部署的资源,比如读取流程定义的XML文件,或流程对应的图片文件. 以下示例均基于SpringMVC. 5.3 部署流程及资源读取 5.3.1 读取已部署的processdefinition 假设现已有了一个页面,用于浏览及管理processDefinition.ID是流程定义id,DID是部署ID,名称是流程定义名称,KEY是流程定义KEY.XML和图片是流程定义的资源文件.…
学习资料:<Activiti实战> 第五章 用户与组及部署管理(二)部署流程资源 内容概览:讲解流程资源的读取与部署. 5.2 部署流程资源 5.2.1 流程资源 流程资源常用的有以下几种: 流程定义文件:拓展名为bpmn20.xml和bpmn 流程定义的图片:拓展名为PNG 表单文件:拓展名为form 规则文件:拓展名为drl 部署流程资源的时候,要注意一点: 引擎会根据不同的拓展名进行不同的处理.bpmn或bpmn20.xml类型的文件,会在ACT_RU_PROCDEF(流程定义表).AC…
学习资料:<Activiti实战> 第十三章 流量数据查询与跟踪 本章讲解运行时与历史数据的查询方法.主要包含三种:标准查询,Native查询,CustomSql查询. 13.1 Query API Activiti的查询API分为: 1 标准查询 以Java对象的方式,创建一个指定类型的Query对象,然后链式编程查询. 缺点:不支持复杂的查询. 2 Nativit查询 采用标准SQL的方式查询,因此支持复杂的查询. 缺点:仅支持部分对象的查询. (1)Query接口与NativeQuery…
学习资料:<Activiti实战> 第六章 任务表单 本章将一步步完成一个协同办公系统(OA)的请假流程的设计,讲解如何将Activiti和实际业务联系起来. 首先讲解动态表单与外置表单的区别,然后使用不同的表单完成相同的功能. 6.1 动态表单 (1)请假流程图…
学习资料:<Activiti实战> 第一章 搭建Activiti开发环境及简单示例 2.5 简单流程图及其执行过程 (1)leave.bpmn 后缀名必须是bpmn.安装了activiti的插件(eclipse:activiti designer,intellij:actiBPM)后,就可以用设计器的形式进行流程的绘制. 注意:在activiti部署的时候,必须同时存在leave.bpmn及leave.png.因此在eclipse设置:window—>preferences—>ac…
学习资料:<Activiti实战> 第一章 认识Activiti 2.1 下载Activiti 官网:http://activiti.org/download.html 进入下载页后,可以看到最新版本的压缩包.快速入门.用户手册.javadoc等.我下载的时候,最新版本是activiti-5.22.0.zip. 目录结构: database: 包含了activiti表的创建.删除及版本升级三种类型的脚本. 创建和删除脚本的命名规则:activiti.[oracle|postgres|db2|m…
学习资料:<Activiti实战> 第一章 认识Activiti 内容概览:讲解activiti的特点.接口概览.架构等基本信息. 1.3 Activiti的特点 1.使用mybatis 2.原生支持spring,可以轻松集成spring 3.引擎的Service接口 Activiti引擎提供了7大Service接口,均通过processEngine获取,支持链式API风格. Service接口 作用 RepositoryService 流程仓库服务,管理流程仓库,比如部署.删除.读取流程资源…
2017.2.9 开涛shiro教程-第七章-与Web集成(一) 原博客地址:http://jinnianshilongnian.iteye.com/blog/2018398 根据下载的pdf学习. shiro提供了与Web集成的支持,通过ShiroFilter来拦截需要安全控制的URL.ShiroFilter是安全控制的入口点,负责读取配置文件,然后判断URL是否需要登录/权限工作.ShiroFilter 类似于如 Strut2/SpringMVC 这种 web 框架的前端控制器. 1.准备环…
RxJava2实战---第七章 合并操作符和连接操作符 RxJava的合并操作符: startWith():在数据序列的开头增加一项数据. merge:将多个Observable合并为一个. mergeDelayError():合并多个Observable,让没有错误的Observable都完成后再发射错误通知. zip():使用一个函数组合多个Observable发射的数据集合,然后再发射这个结果. combineLatest():当两个Observable中的任何一个发射一个数据时,通知一个…
注:(1)环境搭建:activiti自己定义流程之Spring整合activiti-modeler5.16实例(一):环境搭建         (2)创建流程模型:activiti自己定义流程之Spring整合activiti-modeler5.16实例(二):创建流程模型         (3)流程模型列表展示:activiti自己定义流程之Spring整合activiti-modeler5.16实例(三):流程模型列表展示 1.maven导包及spring的一些基本配置与之前的没有什么变化,…
学习资料:<Activiti实战> 第五章 用户与组及部署管理(一)用户与组 内容概览:讲解activiti中内置的一套用户.组的关系,以及如何通过API添加.删除.查询. 5.1 用户与组 5.1.1 用户 public class IdentityServiceTest{ @Rule public ActivitiRule ar = new ActivitiRule();//使用默认的acitiviti.cfg.xml作为参数,当创建activitirule时,会自动创建引擎对象proce…
学习资料:<Activiti实战> 第十九章 统一身份管理 本章讲解如何统一业务系统与activiti的用户管理系统. 第5章的时候已经讲解过activiti的用户与组.一般来说业务系统都有自己的一套用户管理系统,同时维护两套用户系统不太划算.因此介绍几种用户数据同步的方案. 19.1 一套典型的身份系统 总共七张表.(但是代码里没找到建表 语句???) ID_USER ID_ROLE ID_RESOURCES ID_ORG ID_USER_ORG ID_USER_ROLE ID_ROLE_R…
学习资料:<Activiti实战> 第二十章 REST服务 20.1 通信协议概述 略. 20.2 REST API概述 资源分类 资源基础URI 说明 Deployments management 获取引擎信息.管理Job.查询引擎的数据库表等. Repository repository 部署.查询.删除流程定义,创建.获取模型等. Runtime runtime 管理运行时流程实例.任务.变量.事件.批注等. History history 管理历史流程实例.任务.变量.事件.批注等.…
SpringMVC配置的替代方案 自定义DispatherServlet配置 我们之前在SpittrWebAppInitializer所编写的三个方法仅仅是必须要重载的abstract方法.但还有更多的方法可以进行重载,从而实现额外的配置. 例如customizeRegistration().在AbstractAnnotationConfigDispatcherServletInitializer将DispatcherServlet主车道Servlet容器后,就会调用该方法,并将Servlet注…
本章是<spring4.1.8扩展实战>的第四篇,如果业务上需要在spring容器启动和关闭的时候做一些操作,可以自定义SmartLifecycle接口的实现类来扩展,本章我们通过先分析再实战的方法,来掌握这种扩展方式: 原文链接:https://blog.csdn.net/boling_cavalry/article/details/82051356 往期扩展链接前面三章已经做了一些扩展,地址如下: 1. <spring4.1.8扩展实战之一:自定义环境变量验证>: 2. <…
利用Direct3D绘制几何体(续) 学习目标 学会一种无须每帧都要刷新命令队列的渲染流程,以此来优化性能 了解另外两种根签名参数类型:根常量和根描述符 探索如何在程序中生成和绘制常见的几何体:如栅格.圆台和球体 研究怎样通过动态顶点缓冲区来更新CPU中的顶点数据,并且向GPU上传顶点的新的位置信息 7.1 帧资源 首先先回顾一下CPU和GPU并行工作的情形,CPU构建并提交命令列表,同时还需要执行一些必要的工作,而GPU则负责处理命令队列中的各种命令.我们的目标则是使CPU和GPU持续工作,从…
利用Direct3D绘制几何体(续) 学习目标 学会一种无须每帧都要刷新命令队列的渲染流程,由此来优化程序的性能 了解另外两种跟签名参数类型:根描述符和根常量 探索如何在程序中生成和绘制常见的几何体,如栅格.圆台和球体 研究如何通过动态顶点缓冲区来更新CPU中的顶点数据,并且向GPU中上传顶点新的位置信息 7.6. 细探根签名 在前面我们已经介绍过跟签名,它定义了在绘制调用之前,需要绑定到渲染流水线上的资源,以及这些资源如何映射到着色器的输入寄存器中. 7.6.1 .根参数 根签名是由一系列根参…
转发地址:https://www.iteye.com/blog/jinnianshilongnian-2024723 目录贴:跟我学Shiro目录贴 Shiro提供了与Web集成的支持,其通过一个ShiroFilter入口来拦截需要安全控制的URL,然后进行相应的控制,ShiroFilter类似于如Strut2/SpringMVC这种web框架的前端控制器,其是安全控制的入口点,其负责读取配置(如ini配置文件),然后判断URL是否需要登录/权限等工作. 7.1 准备环境 1.创建webapp应…
一.创建项目         项目名称为 “springboot_mybatis_demo”,创建过程中勾选 “Web”,“MyBatis”,“MySQL”,第一次创建Maven需要下载依赖包(耐心等待)         二.实现 2.1创建User类 package com.woniu.bean; public class User { private long id; private String name; private int age; public long getId() { re…
本文将讨论如何关于在Spring生命周期中扩展Spring中的Bean功能. 容器的扩展 通常来说,开发者不需要通过继承ApplicationContext来实现自己的子类扩展功能.但是Spring IoC容器确实可以通过实现接口来增加一些功能.下面将描述一下这些接口. 通过BeanPostProcessor定义Bean BeanPostProcessor接口定义了一些回调方法,开发者可以通过实现来自己的实例化逻辑,依赖解析逻辑等等.如果开发者只是想在Spring容器完成了实例化,配置以及初始化…
创建工程 涉及了 web,加上spring-boot-starter-web和spring-boot-starter-thymeleaf的起步依赖. <dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> <…
引入问题: 在XML配置文件中配置bean后,这些文件又是如何被加载的?它们被加载到哪里去了? Spring容器——框架核心 1.什么是Spring容器?它的功能是什么? 在基于Spring的应用中,你的应用对象生存于Spring容器中. Spring容器负责创建对象.装配对象.配置对象并管理它们的整个生命周期,from birth to death!!(也可以是new到finalize()) Spring容器使用DI管理构成应用的组件,它会创建相互协作的组件之间的关联. 2.Spring自带了…
<!DOCTYPE html> <html lang="en"> <head> <meta charset="utf-8"> <meta name="viewport" content="width=device-width,initial-scale=1.0"> <title>Document</title> <!--1.导入Vue的包…
Ps:本次搭建基于Maven管理工具的版本,Gradle版本可以通过gradle init --type pom命令在pom.xml路径下转化为Gradle版本(如下图) (1)构建工具IDEA IntelliJ IDEA 2018.3.4 x64 新建项目 (2)选择Spring 初始化模板构建,其他选项默认的Java 1.8,点击Next (3)修改图中项目信息,Java版本为8,改完点击Next (4)预先导入的依赖jar包,Web包和Security包不用多说导入 (5)项目放的位置可以…
一.流程变量   流程实例按步骤执行时,需要保存并使用一些数据,在Flowable中,这些数据称为变量(variable).   流程实例可以持有变量,称作流程变量(process variables).   为了使用效率,Flowable将变量分为两种:运行时变量.历史变量. 1.1 运行时变量   流程实例运行时的变量,存入act_ru_variable表中.在流程实例运行结束时,此实例的变量在表中删除.   在流程实例创建及启动时,可设置流程变量.所有的startProcessInstan…
(一)搭建开发环境 学习资料:<Activiti实战> 第一章 认识Activiti 2.1 下载Activiti 官网:http://activiti.org/download.html 入下载页后,可以看到最新版本的压缩包.快速入门.用户手册.javadoc等.我下载的时候,最新版本是activiti-5.22.0.zip. 目录结构: database: 包含了activiti表的创建.删除及版本升级三种类型的脚本. 创建和删除脚本的命名规则:activiti.[oracle|postg…