自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

xiaozaq的博客

java技术

  • 博客(356)
  • 资源 (5)
  • 收藏
  • 关注

原创 (七)Activiti-modeler中文支持

注意第3步,之前已经访问过,缓存到cookie了,这里要么注释该方法,要么去浏览器手动删除对应cookie才能使用下面的zh-CN.json。2、i18n\en.json中添加zh-CN.json。(以下代码片断为网上获得,如有不当,请联系删除)1、修改app.js,51行。

2024-08-16 10:56:43 250

原创 (六)activiti-modeler 设计器属性编辑弹窗bug修复

在使用流程设计器时,经常碰到弹窗不小心关闭,比如不小心点击了灰色背景上,此时BUG就出现了。弹窗被关闭了,分配用户属性被置空了,以前有数据也被清空了,还无法再次点击弹窗编辑。不仅仅是分配用户,还有其他弹窗编辑的控件都存在同样的问题,这里只以分配用户举例。

2024-08-04 18:02:00 367

原创 (五)activiti-modeler 编辑器初步优化

app.js。

2024-08-04 13:58:35 513

原创 (四)activit5.23.0修复跟踪高亮显示BUG

Override经过测试二种方案都是可行。个人比较倾向于第二种。第二种比较有安全感,第一种如果服务器时间回拨,可能导致ID重复,系统故障。虽然发生几率不是很大,但如果对系统稳定性要求较高的话还是存在一些风险。

2024-08-03 18:21:02 1240

原创 (四)springboot2.7.6集成activit5.23.0之更换数据源

前面学习时,使用的内存数据库H2,实际使用时,一般会替换我们指定的数据库,这个时候要怎么配置呢?

2024-08-03 11:17:57 422

原创 (三)springboot2.7.6集成activit5.23.0之流程跟踪高亮显示

查看activiti-diagram-rest源码,相关实现都没考虑jsonp,要是的api支持jsonp还需要对源码进行修改。上一章节配置包扫描时把org.activiti.rest加进去了,activiti-diagram-rest刚好相关的api都在这个包下面,所以不需要再启动类上面再添加新的扫描包。上面图中可以看到,历史执行的节点和线条没有高亮,不知道是故意不高亮的,还是有bug。正常我们希望的是历史路径都高亮,官方实现没按我们希望的逻辑实现,不清楚是有其他原因,还是就是还不够完善。

2024-08-03 07:59:54 756

原创 (二)springboot2.7.6集成activit5.23.0之集成设计器

其实有现成的已实现,我们只需要添加activiti-modeler依赖。一是/activiti-explorer/service这个路径与我们项目不符合,所以需要修改editor-app/app-cfg.js。二是这个是由于新增的那3个接口没有扫描加载到spring容器管理,需要在启动类的上添加@ComponentScan注解。发现创建模型成功了,并重定向了。重新启动项目后,再次测试,创建模型,编辑模型,保存模型功能都测试通过。项目启动后,报错[processes/]不存在。如下图,左侧汉化成功了。

2024-08-02 23:10:20 1133

原创 (一)springboot2.7.6集成activit5.23.0之集成引擎

至此,springboot与activiti的集成就完成了。非常简单,只要2个文件:pom.xml和StudyActivitiApplication.java就可以编译运行了。1.解决SecurityAutoConfiguration和SecurityAutoConfiguration安全检查。解决方案是移除security安全校验方法为修改Application启动类。3.init方法只是为了测试,不是集成activiti引擎必要的代码。2.为了方便测试,简化配置文件,引入h2数据库驱动的依赖。

2024-08-02 21:02:16 351

原创 springboot2自定义starter

建议自定义的starter 以 xxx-spring-boot-starter 命名,官方的Starter一般都是以spring-boot-starter-为前缀。META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports来自定义我们的自动配置的类。路径必须为resources/META-INF/spring.factories 这是springboot2.7之前的约定规范,不遵守一律失效。

2024-08-01 10:36:39 876

原创 项目使用nginx反向代理后,用户反馈图片上传时总是提示上传中

4.没有使用nginx反向代理前,使用微信小程序也是能正常上传图片的,所以微信小程序问题应该也可以排除。打开对应小程序页面测试,上传图片,同时观察请求数据包。再次在手机进入微信小程序上传文件,上传失败,查看日志。3.使用chrome浏览器访问h5页面,上传图片,同时观察请求数据包。6.至此,找到了问题,工具上面配置,把client_max_body_size设置为指定大小,如20M。2.查看原项目日志,发现没有接到图片上传的请求日志。根据用户描述进入页面测试了下,发现确实上传时总是转圈圈,提示上传中。

2024-07-30 09:50:46 207

原创 oracle 根据身份证号码与指定日期计算年龄

【代码】oracle 根据身份证号码与指定日期计算年龄。

2024-01-31 17:12:09 1852

原创 vant的图片上传组件预览问题

base64,iVBORw0KG..."格式时,页面可以正常显示,但是一点击图片预览,可以正常放大预览的,可是页面显示却不正常了,变为上面样子了。先记录问题:主要是我直接吧图片的base64字符串存入了数据库,再次打开页面加载图片时,要么就是页面显示图片错误,要么就是点击图片预览时查看失败。注意修改node_modules下面的源码后,需要删除vite的缓存。如果不设置objectUrl属性,则点击图片无法正常预览。然后清空缓存,重新启动调试,测试正常。点击图片预览前,页面显示正常。

2023-12-21 11:19:13 1818

原创 使用dirmap命令行时报错,提示缺少gevent模块

如果pip版本不是最新版可以使用命令python -m pip install --upgrade pip进行更新。升级pip,然后重新下载安装gevent模块。记得以前是可以的,可能是时间长了重装了系统,引起的。使用下面命令解决下载慢的问题。

2023-12-02 13:27:35 617

原创 html 关于获取页面高度方法

返回整个屏幕的像素高度,即分辨率高度。如常见的pc系统分辨率是1920*1080,那么返回的值就是1080。对应window.screen.width返回就是1920。即window.outerHeight-页签高度 - 地址栏高度 - 书签栏高度。如果是chrome浏览器模拟手机的话,返回的就是模拟的手机分辨率,与电脑分辨率无关。返回 window.screen.height - 任务栏高度。一般我们页面中希望获取到的就是window.innerHeight。浏览器高度,包含了地址栏、书签栏等高度。

2023-09-07 16:54:08 1859

原创 mysql 服务启动失败

搞了快1个小时,最后都准备备份数据库,然后重装mysql看看能否解决了,重装又担心数据丢失,后来看了下mysql的配置文件格式是UTF-8,于是另存为ANSI试试。第二天早上过来发现应用用不了,查原因是mysql没有正常启动,重启mysql服务也不行,然后想到恢复mysql配置文件,把昨天添加的内容去掉了,然后重启还是不行,启动时卡住,一段时间后提示服务启动失败。由于想使用mysql的事件任务调度功能,所以通过sql修改了mysql的配置,启用了事件任务调度。于是修改了mysql的配置文件。

2023-09-06 09:16:08 98

原创 vue常见指令缩写

v-bind:placeholder 与 :placeholder 等价。注意双引号里面是data中的变量名称,不是实际的值。

2023-08-10 18:25:23 146

原创 jdk版本与各软件版本之间的关系

jdk版本与tomcate版本、servlet关系。jdk版本与eclipse版本关系。

2023-06-17 21:12:01 645

原创 单点登录:CAS使用springboot main方法启动cas-server

4.其他地方下载该jar包。我是在cas-server-webapp-tomcat-5.3.9.war中解压中找到xmlsectool-2.0.0.jar。打开文件org.tis.demo.cas.server.web.CasWebApplication。9.demo中默认关闭了ssl,如需开启,可调整如下application.properties里配置。2.使用eclipse导入maven项目。导入时会用较长时间,10分钟吧。3.报错,提示缺少jar包。8.项目启动后,测试。

2023-06-17 18:31:16 1748 1

原创 出现 java.lang.UnsupportedClassVersionError 错误的原因及解决方法

这个是由于使用spring tool suite 4 创建项目时,自动创建的pom.xml依赖的项目使用的jdk版本高于jdk8,即使我在创建项目时指定了jdk8,但是还是要手动修改pom.xml才能修复UnsupportedClassVersionError异常。但是,如果项目中还引入了其他的依赖,而该依赖需要的jdk版本和当前项目编译运行的jdk版本不兼容,则也会报上面的异常。主要是代码编译时使用的jdk版本与运行时使用jdk版本不一致导致的。java compiler 中是设置项目编译的jdk版本。

2023-06-04 19:04:06 19752 1

原创 java中的位运算符

确定指定位置为1是否符合格式的方法:将指定格式中的x都用0替换,原来的0和1保持不变,得到的字节b与a变量进行与运算,如果结果为b,则说明a变量的补码中的1是符合格式的,但0不一定。确定指定位置为0是否符合格式的方法:将指定格式中的x和1都用0替换,0用1替换,得到的字节b与a变量进行与运算,如果结果为0,则说明a变量的补码中的0是符合格式的,但1不一定。(b=(byte)0x80)(a & (byte)0x80) == (byte)0x80 为true,则a符合1xxxxxxx格式。

2023-01-16 10:00:24 720 1

转载 正则表达式 :(?s)(?i) ?: 表示的意思

表示更改^和$的 含义,使它们分别在任意一行的行首和行尾匹配,而不仅仅在整个字符串的开头和结尾匹配。(在此模式下,$的 精确含意是:匹配\n之前的位置以及字符串结束前的位置.)E):与"m"相反,表示如果使用这个修饰符,那么"$"将匹配绝对字符串的结尾,而不是换行符前面,默认就打开了这个模式。A):表示如果使用这个修饰符,那么表达式必须是匹配的字符串中的开头部分。x):表示如果加上该修饰符,表达式中的空白字符将会被忽略,除非它已经被转义。U):表示和问号的作用差不多,用于设置"贪婪模式"。

2023-01-13 14:36:00 1803

转载 MySql数据库实现数据存在则更新,不存在则插入

如上语句的意思的意思是如果字段1不存在(主键,索引或者唯一条件不存在),则执行插入语句,存在则执行更新语句,该更新是将该条存在的记录删除,然后再插入,所以其他的字段的值都是NULL;如上语句的意思的意思是如果字段1不存在(主键,索引或者唯一条件不存在),则执行插入语句,存在则执行更新语句,该更新只更新需要的字段,不影响其他字段的值;如上语句的意思是如果字段1不存在(主键,索引或者唯一条件不存在),则执行插入语句,如果存在,直接忽略不修改任何数据。1.存在则更新(不影响其他字段),不存在则插入。

2023-01-12 10:35:30 4500

原创 三层架构和mvc的区别

MVC是一种软件开发架构模式,全名是Model View Controller,是模型(model)-视图(view)-控制器(controller)的缩写,一种软件设计典范,用一种业务逻辑、数据、界面显示分离的方法组织代码,将业务逻辑聚集到一个部件里面,在改进和个性化定制界面及用户交互的同时,不需要重新编写业务逻辑。业务逻辑都聚集到业务层、dao层、实体层,如果要改进和个性化定义界面及用户交互,一般只需要修改表现层和控制器层就可以,即模型可以不变,只需要修改视图和控制器。视图:主要包括表现层。

2022-11-04 22:23:31 141

原创 Kettle7.1 连接mysql数据库失败

之前网上搜索结果是说要设置mysql时区,根据说明设置了,但还是一样报错,应该不是时区问题。后来检查了下jdk版本以及驱动版本也没问题。最后找到解决办法是选择中配置useSSL参数值为false,连接测试成功!mysql驱动版本:mysql-connector-java-5.1.38.jar。kettle版本是: pdi-ce-7.1.0.0-12。JDK版本:jdk1.8.0_301。...

2022-08-09 16:02:01 1135 1

原创 java 对日期进行加减运算时发现结果与预期不一致。

对日期进行加减运算注意点

2022-08-05 11:20:44 325

原创 正则表达式捕获Java中的组和反向引用

捕获组是一种将多个字符视为一个单元的方法。通过将要分组的字符放在一组括号内来创建它们。例如,正则表达式(狗)创建一个包含字母“ d”,“ o”和“ g”的单个组。捕获组通过从左到右计数其开括号来编号。例如,在表达式((A)(B(C)))中,有四个这样的组。((A)(B(C)))(A)(B(C))(C)现在有个需求是去除文章中重复的“<br/>”换行标签,希望只保留一个换行标签。public static void main(String[] args) throws E

2022-04-19 17:53:49 383 1

原创 第1章 oracle的体系结构(二)

11. Oracle执行SQL查询语句的主要步骤。SQL语句主要由用户进程和服务器进程完成。其他一些进程辅助完成。查询语句的处理主要包含3个阶段:编译(parse)、执行(execute)、提取数据(fetch)。1)编译:在进行编译时,服务器进程会将SQL语句的正文放入共享池(shared pool)的库高速缓存(library cache)中并将完成以下处理。首先在共享池中搜索是否有相同的SQL语句(必须要完全相同,比如sql*plus中是...

2022-03-30 17:11:55 571

原创 java 智能分析字符串格式,然后进行转化为日期对象。

经常需要使用常用的日期格式字符串转化为java的date对象。每次写"yyyy-MM-dd"之类的就好烦,为什么不能直接根据字符串本身格式自动转化吗?于是自己写了个方法把常用转化日期格式字符串自动匹配,然后进行转化。/*** * 智能分析字符串格式,然后进行转化为日期对象。 * @param source * @return * @throws ParseException */ public static Date getDate(String source) throws P

2022-03-30 17:10:51 792

原创 第1章 oracle的体系结构(一)

毕业10年了,上学时oracle dba教程没好好学。现在回过头来看当时的教程,感觉收获满满。 十多年的书,都没怎么翻过,很新的样子。废话不多说,记录一下总结体会。1. 在数据库系统中什么是稀有资源? 数据库系统中最宝贵的稀有资源是内存。为了高效地使用内存这种稀有资源,同时保证数据不丢失,oracle数据库管理系统引入了一个非常复杂的体系结构。2. oracle服务器(server)的组成。 服务器主要由 oracle实例 和 ...

2022-03-18 17:46:12 763

原创 oracle 安装

1.首先获取安装文件。2.解压安装包到指定目录。注意:这里不要对win64_11gR2_datebase_1of2.zip压缩文件右键解压到当前目录。如果这样解压可能导致后面安装时,会有很多提示找不到XXX文件。推荐:对2个压缩包分别解压。具体操作就是如下图选择红框框的选项。同理2of2也一样。然后再把2of2解压出来的文件拷贝到1of2解压目录中去。3.打开1of2目录,进入database文件夹,然后双击setup.exe程序进行安装。接下来按照导引一步步安装就好了。这里我的

2022-03-17 16:23:24 611

转载 证件照换底的方法

作者:菜鸟链接:https://www.zhihu.com/question/35706750/answer/245703410来源:知乎著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。【蒙版】+【边缘调整】是答主目前认为最简单,也是最完美的实现证件照换底的方法,对边缘人物发丝的处理很清晰,操作也非常简单。话不多说,直接进入正题原文参考个人微信公众号“菜鸟办公教程”里写的 PS教程丨证件照换底(三)题主问的是红底换成蓝底,教程写的是将蓝底换成白底,原理方.

2021-11-02 16:32:22 546

原创 synchronized的使用与理解

参考了知乎的文章加深对锁的理解。synchronized锁定的到底是什么? - 知乎主要看了bravo1988的回答。有了以下理解:synchronized既是加锁也是验权。先是进行验证是否有权限进行加锁。然后验权通过后对对象进行加锁。具体步骤大致如下:1.检查对象锁状态。结果有3中情况:1.1 对象未加锁,则验权通过,执行步骤2。1.2 对象已加锁,并且是本线程加的锁,则验权通过,给对象重入锁,执行步骤2。1.3 对象已加锁,...

2021-09-17 18:18:18 147

原创 微信JSAPI支付踩坑记录

1.报如下异常。java.lang.IllegalArgumentException: java.security.InvalidKeyException: Illegal key size at com.wechat.pay.contrib.apache.httpclient.util.AesUtil.decryptToString(AesUtil.java:42) at com.wechat.pay.contrib.apache.httpclient.auth.AutoUpdateCert..

2021-09-10 16:29:46 3906

原创 win10打开命令行

win10打开命令行.regWindows Registry Editor Version 5.00[HKEY_CLASSES_ROOT\Directory\shell\OpenCmdHere]@="在此处打开命令窗口""Icon"="cmd.exe"[HKEY_CLASSES_ROOT\Directory\shell\OpenCmdHere\command]@="cmd.exe /s /k pushd \"%V\""[HKEY_CLASSES_ROOT\Directory\Back

2021-08-11 09:59:23 346

转载 理解和使用Promise.all和Promise.race

一、Pomise.all的使用Promise.all可以将多个Promise实例包装成一个新的Promise实例。同时,成功和失败的返回值是不同的,成功的时候返回的是一个结果数组,而失败的时候则返回最先被reject失败状态的值。具体代码如下:let p1 = new Promise((resolve, reject) => { resolve('成功了')})let p2 = new Promise((resolve, reject) => { resolve(

2021-07-27 15:59:27 165

原创 dynamicCondition后台拼接sql

基于layui的动态添加条件查询ui插件码云:插件主页 高级查询插件下载有很多人问php后台拼接sql的代码怎么写。我这里分享一下java后台拼接sql代码给大家参考下。支持嵌套条件查询:/*** * 构造对应的查询条件语句以及添加动态参数到list列表 * @param listQueryCondition * @param list * @return */ public String superBuildSqlWhereNew(List<QueryCo..

2021-07-22 16:53:18 914 1

原创 Electron 快速入门

参考官方文档:http://www.electronjs.org/docs/tutorial/quick-start安zhao

2021-06-21 15:38:21 2231 2

原创 使用 notepad++ 编辑器在行首、行尾添加字符

比如每行行首添加双引号字符:

2021-06-04 11:56:05 816

原创 java 正则表达式去除字符串前后的逗号和空格

代码如下: public static void main(String[] args) { String exp = "(^[, ]+)|([, ]+$)"; System.out.println(", , ,1,2,3, ".replaceAll(exp, "")); System.out.println(" ,,,,,, ".replaceAll(exp, "")); System.out.println(",,,1,2,3, ,, ".replaceAll(exp, ""))

2021-05-20 09:59:20 2546

原创 easy-scratch3源码分析

目标:希望了解sprite3文件是如何解析的。如下图中选择了【上传角色】——》白鸽.sprite3,然后是如何解析该文件,得到对应的角色名称,造型图片,声音等资源的。思路:要分析源码,肯定的找到对应关键源码。然后在对关键源码研读分析。步骤:一、找关键源码1.因为项目使用了国际化,所以先在文件lib.min.js中查找“上传角色”四个字(我使用的是notepad++工具)。结果如下:2.然后查找项目中那些文件包含“gui.spriteSelector.addSpriteFromFi

2021-04-26 10:20:28 1157

text-show插件,容器大小固定,根据文字多少来调节显示的字体大小

一款文本格式化显示插件text-show。容器大小固定,根据文字多少来调节显示的字体大小。 资源中包含demo,简单易用。

2019-10-13

ofbiz集成富文本编辑器ueditor

ofbiz集成富文本编辑器ueditor。已经配置好组件,拷贝进去就可以直接使用ueditor了。

2017-11-07

开放性实验室预约系统

主要界面预览:http://blog.csdn.net/xiaozaq/article/details/78399316 系统主要功能介绍: 实验室预约管理系统主要有2个使用角色:管理员和学生 管理员模块: 1.学生信息管理。添加了学生用户,学生才能使用工号和初始密码登录系统。首次登录系统后需要修改密码。 实体主要属性:学生id,学号,学生姓名,性别,班级。 2.教师信息管理。添加教师信息,与实验项目批次关联。教师与实验项目批次是一对多的关系。 实体主要属性:教师id,教师姓名,性别,所属院系。 3.管理员信息管理。添加管理员用户。管理员用户有管理员模块的所有操作权限。 实体主要属性:管理员id,姓名,性别,所属院系。 4.学期管理。学期和实验项目是一对多的关系。 实体主要属性:学期名称,开始时间,结束时间,是否可用。 5.课程管理。课程和实验项目是一对多的关系。 实体主要属性:课程id,课程名称。 6.实验项目管理。与课程是多对一关系,与学期是多对一关系 实体主要属性:实验项目id,实验项目名称,所属课程id,所属学期。 7.实验项目批次管理。一个实验项目可能有多个批次,由不同的老师指导。每个批次对应一个老师。 实体主要属性:实验批次id,实验项目id,教师id,实验地点,容纳人数,实验日期,节次,是否确认。 8.学生预约申请管理。管理员审核学生预约申请,如容纳人数已满等情况则拒绝学生的预约申请,并填写相应的原因告知学生。 实体主要属性:学生id,实验批次id,申请时间,审核结果,原因,考勤签到。 9.考勤管理。学生预约成功后,管理员根据实验批次学生参与情况进行考勤。便于以后统计。 学生模块: 1.预约实验室。学生预约已确认的项目批次。申请后添加一条学生预约申请记录。 2.取消预约。学生预约申请后,如管理员还未审核,则可以取消预约。审核成功后不能取消。 3.查看我的预约。查看自己的预约申请记录。 说明: 1.该系统是基于ofbiz 16.11.02版本开发的。 2.系统使用的数据库是mysql。(可以使用其他数据库,只要根据搭建ofbiz系统时配置决定。) 安装运行步骤: 1.搭建好ofbiz系统。具体搭建步骤见:http://blog.csdn.net/xiaozaq/article/details/72763123 2.将解压的文件夹booking复制到apache-ofbiz-16.11.02\hot-deploy目录下。 3.将解压的文件夹lib里的文件复制到apache-ofbiz-16.11.02\lib目录下。 常见问题解决办法: 1.中文乱码等问题解决办法可以查看:ofbiz实战——实验室预约系统导航页 http://blog.csdn.net/xiaozaq/article/details/78400088

2017-11-01

abcdCode代码生成器(需要JDK8支持)

灵活的代码生成器,可以自己定制模板,适合各种类型架构的项目。 demo预览:http://blog.csdn.net/xiaozaq/article/details/69396430

2017-04-06

java jxl-2.6.jar包

将下载后的JXL.JAR,放入classpath,安装就完成了。如果包不能正常的加载,可以把你下载好的JXL.JAR包放入D:\JAVA\jre\lib\ext中(我的是JDK1.6)就OK了。我相信在配置TOMCAT时也需要把相关的三个包放到这里面。

2011-05-23

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

TA关注的人

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