- 博客(171)
- 资源 (2)
- 收藏
- 关注
原创 消息队列-RabbitMQ的交换机和队列配置
RabbitMQ的交换机和队列配置打开rabbitmq的管理页面,可以手动新增Exchange 交换机和 Queue队列1、Exchange交换机配置说明:rabbitmq创建了指定name的交换机后,不允许对其进行改变,否则会报错。类似报错信息请查看链接:https://www.cnblogs.com/wang-yaz/p/10980607.htmlVirtual Host,n...
2022-01-25 17:32:00
184
原创 java日期工具类--获取两个日期之间的工作日天数(只去除周六日,未去除节假日)...
获取两个日期之间的工作日天数 (只去除周六日,未去除节假日)其他参考资料:两个日期之间的工作日计算工具类https://www.cnblogs.com/zzlp/p/5166605.htmlhttps://blog.csdn.net/weixin_30731305/article/details/99756422方法1、使用循环的方式遍历两个日期的每一天,当日期不属于周六日时,工...
2022-01-17 18:20:00
286
原创 springboot配置rabbitmq的序列化反序列化格式
SpringBoot封装了rabbitmq中,发送对象和接收对象时,会统一将对象和消息互相转换会用到MessageConverter转换接口在发送消息时,会将Object转换成Message Message createMessage(Object object, MessageProperties messageProperties)接收消息时SimpleMessageListene...
2021-12-09 19:35:00
187
原创 sql优化-把派生表改成子查询,查询速度将变快
使用数据库:MYSQL 5.7.27参考资料:数据库~Mysql派生表注意的几点~关于百万数据的慢查询问题https://blog.csdn.net/weixin_34146410/article/details/93984487子查询:在一个查询中嵌套另一个查询,则另一个查询成为子查询,也叫内部查询派生表:在FROM子句中使用子查询时,从子查询返回的结果集将用作临时表。 该表称为派生...
2021-11-17 11:47:00
106
原创 EasyExcel按模板导出(动态合并单元格问题处理)
参考网上的链接:EasyExcel按模板导出与下载(自定义合并单元格)https://blog.csdn.net/weixin_44511845/article/details/120290264EasyExcel(根据条件动态合并单元格的重复数据))https://blog.csdn.net/Violet_201903027/article/details/105724907编写...
2021-11-03 17:58:00
500
原创 SpringCloud中使用Nacos作为配置中心原理
使用了是Nacos的自动配置依赖<dependency> <groupId>com.alibaba.cloud</groupId> <artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId> <version>2.2.5.R...
2021-10-19 18:10:00
48
原创 slf4j重定向日志输出
参考资料:SLF4J与Logback、Log4j1、Log4j2、JCL、J.U.L是如何关联使用的https://blog.csdn.net/yangzl2008/article/details/81503579slf4j、jcl、jul、log4j1、log4j2、logback大总结https://my.oschina.net/pingpangkuangmo/blog/410224...
2021-10-08 19:04:00
34
原创 SpringBoot嵌入pentaho-kettle工具实现数据trans转换和job任务手动执行
1、拉取代码后,maven依赖环境下载2、下载pentaho-kettle的zip包:https://sourceforge.net/projects/pentaho/files/Pentaho9.1/client-tools/3、解压后,将data-integration的plugins、system文件夹复制到自己指定的目录下,我放到D:/data-integration目录下4、设...
2021-09-28 17:35:00
130
原创 Apache的karaf启动报错
kettle项目中使用到了这个karaf框架嵌入到java项目中,启动时会报错信息: Lock acquired. Setting startlevel to 100九月 28, 2021 1:01:38 下午 org.apache.karaf.main.Main$1 log严重: Bundle org.ops4j.pax.url.mvn [4] Error starting mvn:...
2021-09-28 14:50:00
114
原创 SpringBoot扩展接口- Bean实例化前后扩展点
常用的扩展接口:1、ApplicationContextAware:获取应用上下文2、BeanPostProcessor 接口在对象实例化后, 初始化方法调用前后做前置处理和后置处理操作。触发时间:刷新上下文refreshContext()方法中,调用 finishBeanFactoryInitialization(beanFactory) 方法,进行bean的实例化上下文applic...
2021-09-17 18:14:00
33
原创 SpringBoot扩展接口- BeanFactoryPostProcessor后置处理器
BeanFactoryPostProcessor接口,对BeanFactory进行后置方法调用BeanFactoryPostProcessor分为两组:BeanDefinitionRegistryPostProcessor 注册器和BeanFactoryPostProcessor 规则处理器(先执行完所有注册器, 最后才执行规则处理器)功能:1、实现注册器接口方法,将自定义bean注册...
2021-09-17 00:53:00
30
原创 SpringBoot扩展接口- ApplicationListener 事件监听器
ApplicationListener监听器用来监听ApplicationEvent事件。ApplicationListener 可以在Spring项目运行过程中,监听对应的事件,来完成相应的操作。ApplicationListener接口是Spring应用生命周期各个阶段的事件监听器,可以在任意一个阶段触发我们想要执行的操作负责在每个阶段做做对应处理比如ApplicationEn...
2021-09-16 17:45:00
38
原创 SpringBoot扩展接口-SpringApplicationInitializer 初始化器
这个扩展接口的主要目的是允许我们对ConfigurableApplicationContext的实例做额外的初始化操作调用这个接口之前ApplicationContext上下文已经创建,并且 BeanFactory也创建了public void initialize(ConfigurableApplicationContext applicationContext){}因为是对A...
2021-09-16 15:58:00
29
原创 SpringBoot扩展接口-加载环境配置属性源
SpringBoot启动过程中会在PrepareEnviroment()方法中进行上下文环境的准备即,进行StandardServletEnvironment 的初始化配置,内部有一个配置属性列表:List<PropertySource<?>> propertySourceList默认会添加系统环境参数,系统JVM参数,还有命令行参数等属性源。提供了扩展环境属...
2021-09-16 11:32:00
32
原创 Spring Security OAuth 2.x的刷新token接口/oauth/token自定义修改
参考资料:在OAuth 2中模仿DefaultTokenServices写一个新的tokenServices来提供个性化服务https://my.oschina.net/u/3768341/blog/2998273Spring Security OAuth 2.x的刷新token方法自定义修改使用maven依赖:<dependency> <groupId&...
2021-09-15 18:05:00
138
原创 关于docker启动失败问题处理
docker info命令输出显示:Server:ERROR: Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running?本次解决问题的资料:关于Docker启动报错:docker.socket: Failed to listen on sock...
2021-06-08 10:54:00
119
原创 SpringBoot2.x集成springSecurity和OAuth2.0启动错误处理
当启用@EnableAuthorizationServer注解时,启动项目报错报错信息Description:Field configurers in org.springframework.security.oauth2.config.annotation.web.configuration.AuthorizationServerSecurityConfiguration requ...
2021-05-28 10:10:00
44
原创 java工具类-对称加密算法AES 加密文件流
文件流加密涉及到大文件加密过程,不能直接使用Cipher.doFinal(byte[] bytes)方法进行直接加密超大文件会导致内存溢出。解决方法:可以使用 Cipher.update(byte[] bytes) 方法进行文件流部分加密数据,当整个文件流数据都加密完后,使用 Cipher.doFinal()方法来生成填充内容,保证最后一段内容也是完整128位数据块所以会使用Ci...
2021-05-06 19:07:00
49
原创 EasyExcel注解方式导出数据过程解析
具体使用示例链接:语雀EasyExcelhttps://www.yuque.com/easyexcel/doc/write示例代码public class StudentExportDto { @ExcelProperty(value = {"学生信息", "姓名"} ,index = 0) private String name; @ExcelProper...
2021-03-04 14:03:00
91
原创 Java数据结构-集合类
List集合(ArrayList,Vector,LinkedList使用场景)和Set集合参考链接:java各种集合类区别 https://blog.csdn.net/qq_30711091/article/details/88847892Java 集合系列之四:Queue基本操作 https://www.cnblogs.com/haimishasha/p/10808906.html...
2021-03-03 18:37:00
22
原创 SpringBoot启动过程中涉及到了扩展接口
1、ApplicationListener接口2、上下文环境配置文件扩展:EnvironmentPostProcessor (重要)3、ApplicationContextInitializer接口 上下文初始化器4、BeanFactoryPostProcessor接口 对BeanFactory操作了后置处理器 (重要)5、Aware接口及其子接口会在refreshContext()方法...
2021-03-02 18:49:00
34
原创 在Tomcat服务器中启动SpringBoot项目原理(简化版)
总的来说,tomcat方式启动WAR包项目,tomcat会查询context上下文中实现ServletContainerInitializer接口的类,然后调用类的onStartup(Set<Class<?>> c, ServletContext ctx)方法Spring的SpringServletContainerInitializer实现了这个ServletC...
2021-03-01 18:07:00
33
原创 SpringBoot启动过程解析(简化)
springBoot web方式启动过程在这个启动过程中会有各种SpringBoot对外提供的扩展接口来对不同启动阶段进行自定义操作。了解启动过程也是为了让我们更好理解SpringBoot提供的扩展接口使用jar包启动或者外置war包启动都是调用SpringApplication.run()方法进行项目启动tomcat会查询context上下文中实现ServletContai...
2021-02-26 16:00:00
28
原创 JAVA项目中关于字典学习,和缓存搭配使用的方法
字典数据是什么? 这里说了字典不是软件工程中说的数据字典。 字典数据:用于动态设置某对象的属性是属于在一个可列举的数据范围内的某一类型数据,使用字典类型作为该类别属性的唯一标识如:用户类型:学生,老师,家长,校长等有什么作用? 字典数据由两个表组成:字典类型表 dict_type,字典类型数据表 dict_data 这个数据相当于java中的枚举类,可以被使用于前端的数据展...
2020-09-10 18:47:00
35
原创 springBoot--Redis配置与使用
SpringBoot自动配置redis,主要是两个自动配置类缓存管理器配置类:org.springframework.boot.autoconfigure.cache.RedisCacheConfigurationredis封装了工具RedisTemplate自动配置:org.springframework.boot.autoconfigure.data.redis.RedisAutoC...
2020-07-20 15:22:00
32
原创 java工具类-列表分段处理
java.util.List 分段使用google的guava类库对List分段处理 List<Integer> intList = Lists.newArrayList(1, 2, 3, 4, 5, 6, 7, 8); List<List<Integer>> subSets = Lists.partition(intList, ...
2020-07-06 17:37:00
17
原创 SpringBoot学习-@Validated注解自定义参数校验工具
CommonValidatorImpl。javaimport org.springframework.beans.factory.InitializingBean;import org.springframework.stereotype.Component;import org.springframework.util.Assert;import org.springframewor...
2020-06-19 18:26:00
25
原创 SpringBoot学习系列-war包在tomcat下启动原理
springBoot项目 war包启动原理参考链接:【spring boot war包启动原理】 https://www.cnblogs.com/stone-with-big-ears/p/10950581.html【Tomcat war包加载过程】https://www.jianshu.com/p/6e435a5a4feespring boot war启动是利用Servlet 3.0...
2020-06-16 16:25:00
57
原创 SpringBoot学习系列-jar包启动原理
打包生成两个jar包ssmdemo-plus.jar引入了相关第三方依赖。ssmdemo-plus.jar.original仅包含应用编译后的本地资源jar包的目录结构|—— BOOT-INF |—— classes 存放的是应用编译后的class文件 |—— lib 存放的是应用依赖的第三方jar包文件|——META-INF 存放应用打包信息maven坐...
2020-06-10 19:43:00
28
原创 windows下mysql启动报错,Can't find error-message file 'D:\soft\mysql-5.7.27/share/errmsg.sys'.
Can't find error-message file 'D:\soft\mysql-5.7.27/share/errmsg.sys'.connot create ...启动mysql服务,直接启动不起来,没有报错信息然后使用命令行启动mysqlD:\soft\mysql-5.7.27\bin\mysqld --defaults-file=D:\soft\mysql-5.7.27\m...
2020-05-12 11:26:00
57
原创 spring注解@Transactional 和乐观锁,悲观锁并发生成有序编号问题
需求:系统中有一个自增的合同编号,在满足并发情况下,生成的合同编号是自增的。测试工具:Apache Jmeter实现方法:创建一个数据库表。编号最大值记录表表结构类似CREATE TABLE `project_number_record` ( `id` varchar(64) NOT NULL, `record_year` date DEFAULT NULL COMMENT ...
2020-05-07 18:59:00
82
原创 springMVC配置文件学习
spring配置文件分为dao层,web层,service层,三层配置这三层配置中,dao层对应数据库的配置:进行数据库相关和model实体类的配置web层对应controller包中配置:设置全局请求响应解析,controller层相关的所有配置。service层,业务逻辑的处理:主要设置service层类的自动扫描,事务相关bean的配置web层的配置比较复杂,涉及到数据处...
2019-11-19 15:58:00
22
原创 list列表转tree树方法(生成树型结构)
基础类:public class TreeNodeDto { private String id; private String parentId; /** * 节点名称 */ private String nodeName; private String nodeType; private String iconUrl...
2019-11-19 15:09:00
89
原创 java工具类学习,系统中用户密码加密总结
现在项目,用户注册登录部分很少有涉及到了,原因:现在热门开发框架都已经在底层帮我们做了一套用户注册,密码加密,登录认证,权限控制,缓存数据等基本功能。这有利于项目的快速完成,只需要搬砖码畜们专注于业务逻辑,会利用底层的业务逻辑就行了。这些快速开发框架的出现,也降低了我们java行业的就业门槛,但这不利于我们个人的成长(个人竞争力的体现不能只是会写业务逻辑代码,需要的是拥有绝对的技术壁垒,你有我...
2019-11-18 16:31:00
25
原创 java处理jqueryGantt甘特图数据的task.depends依赖规则方法
前端采用jqueryGantt,github地址为:https://github.com/robicch/jQueryGantt原以为后端只需要简单地保存甘特图任务列表和返回任务列表就行了。但功能需求是:创建一套任务模板(拖动图片,更改任务依赖关系),然后根据设置的项目开始时间和选择的任务模板动态生成项目的任务列表。这个生成任务的时间有几点问题。1.甘特图的任务时间是不包括周六日的时间(...
2019-11-13 10:58:00
66
原创 中国行政区划表,包括34个省、直辖市的所有数据 mysql数据
中国行政区划表,包括34个省、直辖市的所有数据sql文件地址https://gitee.com/zwh_9527/ChinaProvince
2019-11-07 19:18:00
71
原创 使用mybatis的resultMap进行复杂查询
记录下mybatis的集合查询中碰到的问题https://jaychang.iteye.com/blog/2357143MyBatis ofType和javaType区别https://blog.csdn.net/u013216156/article/details/78642920mybatis 关联查询 resultMap 同名冲突https://blog.csdn.net/cas...
2019-09-04 10:26:00
19
原创 intel 酷睿core系列cpu的类型:U M H HQ MQ
相对于笔记本来说。一般我们说的intel系列cpu是指应用于desktop桌面版,embedded嵌入式版, mobile移动版桌面版和移动版cpu对比http://tieba.baidu.com/p/5771965156cpu大全http://tieba.baidu.com/p/6055792431desktop桌面版 功耗11W-180W台式机处理器一般用了比较多,常见后缀...
2019-09-03 14:46:00
105
原创 mybatis问题。foreach循环遍历数组报错情况,及其解决方法
根据条件查询数据列表,mybatis查询代码如下如果只查询属于特定部门拥有的数据权限。这需要用 String[ ] codes保存当前部门及其子部门的部门编码。所以需要在mybatis中遍历编码数组。失败1<select id="findList" resultType="xx.entity.Xxxx"> SELECT ${sqlMap.column.toS...
2019-08-30 10:38:00
140
原创 jeesite框架前端 tabPage页签刷新功能。
js主动刷新当前页签的js代码原本想找一下jeesite有没有主动刷新当前页面的内置方法。官方文档找了一大堆,找都找不到,也可能我这个需求比较少人需要。tab标签页有一个右键刷新页签功能查看编译后的代码,发现可以用前端编译后的源码$('.active .refresher').click() 这个js脚本来调用官方内置的刷新功能。但是这个脚本存在问题,只有第一次才会触发,再操...
2019-08-06 18:34:00
104
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人