自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(565)
  • 资源 (26)
  • 收藏
  • 关注

原创 python logging

python logging注意:这里和我的认知不太一样,这里先从最后一个日志文件开始写,即先从2号开始写,然后是1号,最后是没有标号的文件。logging.conf

2022-09-25 19:30:06 76

原创 python selenium

或者下载和自己的浏览器版本号一致的驱动程序。将下载下来的驱动文件复制到 /usr/local/bin目录下面。

2022-09-25 15:13:04 13

原创 Python(二)PyCharm

创建文件时在文件的最上面自动使用模板。

2022-09-25 12:33:45 17

原创 Python(一)简介

Python是一种现代化编程语言,其特点是优雅、应用场景广泛。Python是一种现代化编程语言,既然是现代化,那就要相比老语言要支持更多的语法。3.2 不需要在语句最后写;3.3 方法的入参不需要写数据类型,不需要指定返回值类型, 也不需要使用{}来指定方法体3.4 支持负索引同样是获取最后一个元素,python由于支持负索引代码量就很少,看起来很简洁。3.5 判空如果字符串、元组、列表、Set集合等为空会直接作为假,而Java还需要工具方法来返回bool值。3.6 命名规范java推荐

2022-09-24 21:41:52 193

原创 SpringBoot入门教程:上传Excel(EasyExcel)

EasyExcel上传excel

2022-09-24 13:47:05 113

原创 SpringBoot入门教程:下载导出Excel(EasyExcel)

SpringBoot入门教程:导出Excel(EasyExcel)

2022-09-18 17:42:19 6

原创 SpringBoot入门教程:MySQL8新特性(通用表表达式)

定义递归通用表达式,递归通用表表达式是指表达式中还引用定义的表达式,使用递归通用表达式要注意递归结束的条件。

2022-09-11 19:33:00 165

原创 SpringBoot入门教程:MySQL8新特性(优化器索引)

隐藏索引就是查询的时候不会使用到该索引,但是当插入或者删除数据时仍然会维护索引列表。隐藏索引的常用场景是判断某个索引是否有效果。先隐藏索引看一下SQL执行时间,然后再放开索引,再查看一下执行时间,看看放开索引是否真的提高了效率,如果没有提高查询效率证明这个索引是多余的,可以直接删掉。注意:主键是不可以设置不可见索引。

2022-09-11 11:28:36 117

原创 SpringBoot入门教程:MySQL8新特性(窗口函数Window Function)

根据用户编号对订单数据先进行分区(分组、分类),然后对每个分区给出行号,并且根据分区字段, 排序字段 进行组合排序。注意:使用了row_number可以看到数据的顺序是按照amount值进行排序了。想要其它排序就自己写排序规则。row_number()表示行号,就是对每条记录增加一个行号,行号从。案例:查询每个用户的订单数据详情 ➕ 当前用户的订单总金额。,每个分区会从1重新开始给出新的行号。开始,如果对数据进行分区。

2022-09-10 12:28:36 115

原创 SpringBoot入门教程:MySQL8新特性(JSON数据类型)

抽取json中指定字段对应的值,如果是字符串。config 配置信息字段的数据类型为。表示当前document。存在则更新,不存在则添加。对json值去掉双引号。根据value找key。

2022-09-05 22:32:07 160

原创 SpringBoot入门教程:数据库恢复(mysqldump和mysqlbinlog)

MySQL的所有的数据库改变操作(除了select等)都会记录到一种二进制文件中,这种文件就是bin log。bin log 用来实现主从复制,也常用来误删数据库找回丢失的记录。

2022-09-03 22:25:51 606

原创 SpringBoot入门教程:浅聊POJO简单对象(VO、DTO、Entity)

POJO包括很多,其中有entity、dto、vo、bo、do等,各个公司对每种pojo可能不尽相同,如果分的太细感觉很繁杂,如果不分又太笼统,这里主要介绍一下实际开发中如何折中的使用。

2022-08-29 22:21:52 291

原创 SpringBoot入门教程:枚举嵌套分组

接口中可以定义多个枚举定义,而接口中的枚举可以实现当前接口。在接口中定义多个枚举,可以对枚举进行分组(分类),如 大类中又分小类,或者 一级中又分二级。对枚举分组,在使用时就像链时语法一样可以一直点下去。......

2022-08-25 21:58:12 39

原创 SpringBoot 入门教程:Postman常用功能

Postman必会技能

2022-08-19 22:51:22 963

原创 SpringBoot入门教程 Lombok使用注意事项

如果对Lombok的注解不是很了解话,可能在某些细节上会遇到问题,但无论遇到什么问题其实看一下.class文件生成的内容就知道哪里出问题了。 一:@NoArgsConstructor生成无参构造函数。@NoArgsConstructorpublic class Person { private Long id; private Integer age;}🔽public class Person { private Long id; privat......

2022-05-30 16:02:45 123 1

原创 Activiti7工作实战笔记总结

工作已经使用Activiti工作流有一段时间了,现对一些工作注意事项进行总结。一:IDEA 工作流插件Activiti中的IDEA插件真的非常烂,要非常非常小心。有的IDEA打卡.bpmn文件时不显示属性面板,这时候需要将IDEA的主题调成白色,关闭.bpmn文件重新打开就出来了。使用IDEA打开.bpmn文件时很多时候你什么也没改,但是文件会发生变化,会被git识别出来,一般是鼠标点击了节点,可能节点的x,y坐标发生了一丁点的改变。工作流插件在属性面板中设置了值,再打开查看时不显示,注意此.

2022-03-15 07:38:15 679

原创 Activiti7工作流引擎:基础篇(九) Annotation

Text Annotation:文本注解,就像编程语言中的注释,用来解释流程,不参与流程审核,在活动历史中也不存在。@Testvoid testStartAndComplete() { runtimeService.startProcessInstanceByKey("AnnotationProcess"); Task task = taskService.createTaskQuery().processDefinitionKey("AnnotationProcess") .singleR

2022-01-26 22:02:31 443

原创 SpringBoot POI Word合并

POI 常用来操作Excel,但也可以用来操作Word。一:pom.xml<dependency> <groupId>org.apache.poi</groupId> <artifactId>poi</artifactId> <version>3.17</version></dependency><dependency> <groupId>org.apache.poi&.

2022-01-25 21:05:04 361

原创 Activiti7工作流引擎:进阶篇(五) ScriptTask

Script Format:脚本类型,groovyScript:脚本代码<process id="ScriptTaskProcess" isClosed="false" isExecutable="true" processType="None"> <startEvent id="_2" name="StartEvent"/> <scriptTask activiti:exclusive="true" id="scriptTask" name="ScriptT..

2022-01-22 18:31:53 442

原创 Activiti7工作流引擎:进阶篇(五) ReceiveTask

ReceiveTask 称之为接收任务、等待任务等。当执行流进入ReceiveTask时会先执行执行监听器,然后整个执行流进入wait等待状态,而且在act_ru_task中不没有当前正在进行中的任务,当执行流执行trigger()方法时才会触发正在睡眠的ReceiveTask,进入下一个节点。public class ReceiveTaskDelegate implements ExecutionListener { @Override public void notify(Dele.

2022-01-22 16:30:54 655

原创 Activiti7工作流引擎:高阶篇(六) ManualTask

ManualTask 会自动执行,且不会记录在act_hi_taskinst表中。可以将某个节点完成后需要自动执行的代码封装到这里执行。public class ManualTaskDelegate implements ExecutionListener { @Override public void notify(DelegateExecution execution) { System.out.println(execution.getEventName() + "

2022-01-18 22:37:30 175 1

原创 Activiti7工作流引擎:进阶篇(六) MailTask

一:开启POP3/SMTP/IMAP二:定义bpmn三:application.ymlspring: datasource: url: jdbc:mysql://localhost:3306/activiti?useUnicode=true&characterEncoding=utf8&serverTimezone=GMT username: root password: root123 driver-class-name: com.mysql.

2022-01-17 22:22:58 1077

原创 Activiti7工作流引擎:进阶篇(七) 多实例

一:多实例基本示例@Testvoid testStartAndComplete() { Map<String, Object> variables = new HashMap<>(); variables.put("approveUserList", Arrays.asList("zhaomin", "xiaozhao", "zhouzhiruo")); runtimeService.startProcessInstanceByKey("multiInstance", v

2022-01-16 18:59:19 896 4

原创 Activiti7工作流引擎:高阶篇(七) CallActivityTask 子流程跳转到父流程

@Testpublic void delopyAllBpmn() { ProcessEngine processEngine = ProcessEngines.getDefaultProcessEngine(); processEngine.getRepositoryService() .createDeployment() .addClasspathResource("bpmn/LeaveProcess2.bpmn") ..

2022-01-15 22:50:28 722

原创 Activiti7工作流引擎:高阶篇(五) ProcessDefinitionUtil

// 根据流程定义id获取流程定义先关信息,可以获取所有流元素FlowElementProcess process = ProcessDefinitionUtil.getProcess(processDefinitionId);// 根据id获取指定的节点信息FlowElement targetFlowElement = process.getFlowElement(targetTaskDefKey);// 主要查询act_re_procdefProcessDefinitionUtil.ge

2022-01-14 22:41:29 380

原创 Activiti7工作流引擎:高阶篇(六) 内嵌子流程 SubProcess

一:定义.bpmn文件二:启动并完成第一个任务@Testvoid testStartAndComplete() { runtimeService.startProcessInstanceByKey("SubProcessExample"); Task task = taskService.createTaskQuery().processDefinitionKey("SubProcessExample") .taskAssignee("zhangsan") .singleResult

2022-01-09 22:31:31 667

原创 Activiti7工作流引擎:高阶篇(六) 前进和后退任务

一:leave.bpmn<process id="leave" isClosed="false" isExecutable="true" name="请假流程" processType="None"> <startEvent id="_2" name="StartEvent"/> <userTask activiti:assignee="zhangsan" activiti:exclusive="true" id="apply" name="发起申请"/>

2022-01-09 18:33:25 899 5

原创 Activiti7工作流引擎:进阶篇(三) ProcessRuntime和TaskRuntime

一:谢谢Activiti7提供了两个Runtime类用于对Service提供了进一步封装,并且和Spring Security进行高度耦合。@PreAuthorize("hasRole('ACTIVITI_USER')")public class ProcessRuntimeImpl implements ProcessRuntime { private final RuntimeService runtimeService;}public interface TaskRuntime {

2022-01-05 19:53:42 963

原创 Activiti7工作流引擎:进阶篇(六) 调用子流程 CallActivityTask

方法之间可以相互调用,同理,流程定义之间也可以相关调用,达到流程定义复用的目的。一:流程定义1二:流程定义2Called Element: 调用其它流程,值为其它流程Id。三:启动和启动流程@Testpublic void delopyAllBpmn() { ProcessEngine processEngine = ProcessEngines.getDefaultProcessEngine(); processEngine.getRepositoryService()

2021-12-28 22:38:11 1370

原创 Activiti7工作流引擎:实战篇(三) 前端演示

一:登录jack 123456rose 123456tom 123456jerry 123456二:部署流程三:发起申请四:rose审核五:tom审批六:源码

2021-12-24 22:16:44 689

原创 Activiti7工作流引擎:实战篇(二) 与SpringSecurity集成

1. mapperpublic interface UserMapper { @Select("select * from tb_user where username=#{userName}") User loadUserByUsername(String userName);}2. service@Servicepublic class UserService { @Autowired private UserMapper userMapper;

2021-12-24 21:21:06 663

原创 Activiti7工作流引擎:实战篇(一) 准备工作

本来我是想买块肉的,但是现在我只能买块豆腐。 1. pom.xml引入最新版本 activiti-spring-boot-starter依赖。<dependency> <groupId>org.activiti</groupId> <artifactId>activiti-spring-boot-starter</artifactId> <version>7.1.0.M6</version&...

2021-12-24 20:22:47 510

原创 Activiti7工作流引擎:进阶篇(四) ServiceTask

UserTask 需要调用 taskService.complete(task.getId()) 来完成任务,而ServiceTask是不需要用户操作而自动执行的任务类型,它会自动调用Spring环境下的某个Bean的某个方法。因为使用的是Bean所以在需要在Spring环境下运行,这里在SpringBoot2.x版本运行。*************************** 废话不多说,上来就干。***************************员工申请请假-》经理审批-》总经理审批。如果是.

2021-12-22 22:05:35 1187

原创 Activiti7工作流引擎:进阶篇(十) 驳回(拒绝)

驳回或者拒绝就是某个审批人不同意你的申请,此时流程就直接结束了。我们可以增加分支条件或者排它网关来完成驳回功能。此方法适用于节点较少的情况。如果节点较多,每个节点都增加一个排它网关,感觉整个流程的.bpmn文件内容很多,我们当驳回的时候可以直接操作act_ru删除相关数据和act_hi表中完善end_time等。...

2021-12-21 21:43:17 4346 1

原创 Activiti7工作流引擎:进阶篇(九) 加签和转签

加签就是委派任务delegateTask,然后去解决任务resolveTask(并不是去真正的去完成任务)。转签完成后才能完成任务complete。一:委派任务A由于某些原因不能处理该任务可以把任务委派给用户B代理,当B决绝完之后再次回到用户A这里,然后由A去完成任务,在这个过程中A是任务的所有者OWNER_,B是该任务的办理人Assignee。A->B->A。应用场景:这事太大,我做不了主,我先问一下老大delegateTask,如果老大说可以resolveTask我就完成审批..

2021-12-19 22:45:32 2385

原创 Activiti7工作流引擎:进阶篇(八) 会签

之前的任务负责人Assignee都是一个,而任务可以有多个人有权限审批,只要其中有一部分人完成审批任务就算整个任务完成。同一个任务需要多个负责人来完成被称之为“会签”。会签就是一种投票,满足投票人数就过。会签是通过多实例Multi Instance来设置的:Sequential:执行顺序,true表示多实例顺序执行,false表示多实例并行。Loop Cardinality:循环基数,选填,会签人数。Completion Condition:完成条件,Activiti预定义了3个.

2021-12-19 21:48:39 3877

原创 Activiti7工作流引擎:进阶篇(三) SpringBoot整合Activiti6

目前企业中使用Activiti6版本的比较多,所以有必要学习一下Activiti6。1. pom.xml<dependency> <groupId>org.activiti</groupId> <artifactId>activiti-spring-boot-starter-basic</artifactId> <version>6.0.0</version></dependency><.

2021-12-19 13:03:46 673

原创 Activiti7工作流引擎:进阶篇(二) SpringBoot整合工作流Activiti7

SpringBoot整合Activiti7需要与SpringSecurity整合。SpringBoot整合Activiti7之后的所有数据库Id值都使用了类似于UUID样的值。SpringBoot又封装了一套API来操作Activiti。1. pom.xml<dependency> <groupId>org.activiti</groupId> <artifactId>activiti-spring-boot-starter</artif.

2021-12-16 22:15:03 1832

原创 Activiti7工作流引擎:进阶篇(一) Activiti7与Spring整合

在Activiti中核心类的是ProcessEngine流程引擎,与Spring整合就是让Spring来管理ProcessEngine,通过org.activiti.spring.SpringProcessEngineConfiguration 与Spring整合方式来创建ProcessEngine对象。一:pom.xml<properties> <project.build.sourceEncoding>UTF-8</project.build.sourceEncodi

2021-12-16 13:44:39 1222

原创 Activiti7工作流引擎:基础篇(五) 常用操作

查询流程定义@Testpublic void testQueryProcessDefinition() { List<ProcessDefinition> list = ProcessEngines.getDefaultProcessEngine() .getRepositoryService() .createProcessDefinitionQuery() .processDefinitionKey("hel

2021-12-13 22:55:34 1358

springboot-activiti.zip

springboot集成spring security + activiti7

2021-12-25

需求文档模板.docx

需求文档模板.docx

2021-03-03

springboot-fastdfs.zip

springboot-fastdfs 作为服务器,前端使用vue.js + element-ui来制作上传页面,代码实际测试可直接运行。

2020-08-29

Google浏览器插件Axhub

Google浏览器插件Axhub

2020-07-03

hadoop lib/native

在安装hadoop时如果遇到WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform这个错误,请下载该文件放到hadoop目录下,Mac中放到libexec目录下。

2019-03-05

Springboot2+JPA|MyBatis+Sharding-JDBC示例

Springboot2+JPA|MyBatis+Sharding-JDBC示例源码,可直接运行。

2018-07-24

API接口设计之token、timestamp、sign

API接口设计之token、timestamp、sign的具体使用demo示例。

2018-06-24

Spring-Mybatis-Druid-Kafka示例集成Example

SpringMVC + Mybatis + Druid + Kafka 示例集成Example。

2018-03-03

Spring+Mybatis+Druid示例整合Demo2

Spring + Mybatis(通用Mapper) + Druid示例整合Demo示例

2018-03-01

SpringMVC+fastjson+Swagger集成示例源码

SpringMVC+Fastjson+Swagger集成示例完整源码Example。

2017-12-20

rabbitmq与spring集成示例demo

rabbitmq 与spring 使用maven集成示例源码 demo 示例。

2017-12-14

Spring+Mybatis+Druid+POI示例整合demo

Spring+Mybatis+Druid+POI示例整合demo

2017-06-05

Spring+Mybatis+Druid示例整合Demo

Spring+Mybatis+Druid示例整合Demo

2017-06-02

Spring-Mybatis-Druid示例整合Demo

Spring-Mybatis-Druid示例整合Demo

2017-06-01

Spring-Mybatis-Druid 整合Demo

Spring-Mybatis-Druid 整合Demo

2017-05-31

spring+ehcache示例整合Demo

spring+ehcache示例整合Demo

2017-05-26

spring+ehcache完整示例demo

spring+ehcache示例demo

2017-05-26

hibernate-validator示例demo

springmvc +fastjson +validator 示例整合

2017-05-23

springmvc+fastjson demo

springmvc+fastjson 完整示例,下载即可运行

2017-05-18

iOS 防好友动态顶部功能

iOS 防好友动态顶部功能

2016-12-27

自定义Cell源码

自定义Cell源码

2016-08-25

NSTimer 定时器示例

该示例演示了定时器的 立刻启动, 暂停, 继续, 停止 操作

2016-02-25

UICollectionViewExample

UICollectionView基本使用方法以及自定义单元格。

2016-02-24

CYLTabBarControllerExample

CYLTabBarController 一个小示例

2016-02-14

iOS主题皮肤切换示例代码Demo

iOS主题皮肤切换示例代码Demo,示例可运行

2016-01-28

Objective-C&UIKit自学笔记

Objective-c、UIKit自学笔记

2015-09-18

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除