自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(143)
  • 资源 (1)
  • 收藏
  • 关注

原创 数据库建表规范【记录】

【强制】自增主键命名必须是id,关联表外键命名xxyyzz_id;业务主键命名必须是key char(36)。【强制】必须有行数据的创建时间字段create_date和最后更新时间字段edit_date。【强制】创建表时必须显式指定表存储引擎类型,如无特殊需求,一律为InnoDB。【推荐】状态字典类型字段类型char(3),尽可能有业务含义,全局统一。【推荐】反范式设计:把经常需要join查询的字段,在其他表里冗余一份。

2024-09-30 13:52:08 403

原创 前端URL链接转迅雷下载链接

普通的url是无法拉起迅雷下载的,这个时候需要把url转成迅雷能识别的链接。

2024-09-06 19:36:24 633

原创 解决Element UI 表格组件懒加载数据刷新问题

element ui的table组件设置成懒加载时,遇到数据表格需要更新、删除等操作,子节点不会自动更新。

2024-07-21 21:41:29 1465

原创 一个依赖搞定 Spring Boot 反爬虫和防止接口盗刷

防刷

2022-06-16 21:57:02 504

原创 js使用localeCompare中文排序

js排序

2022-06-15 16:26:56 1635 1

原创 java获取两个日期之间的所有日期(年月日)

日期工具

2022-06-15 10:08:00 1820

原创 SpringBoot 接口防止恶意刷新和暴力请求

请求限制

2022-06-13 23:11:57 887 1

原创 SpringBoot整合Quartz实现分布式调度

定时任务

2022-06-09 22:07:20 1549

转载 SpringBoot实现本地(网络)文件下载和zip压缩包批量下载

zip下载

2022-06-04 16:58:15 1882 1

原创 使用Iterator对List集合进行增加或者删除操作时报异常的分析

一、问题使用Iterator在对List集合进行遍历集合时,如果只是遍历而不进行增加、删除操作时,可以正常运行吗,但是如果我们在使用迭代器对List集合进行插入或者删除时,就会出现Exception in thread "main" java.util.ConcurrentModificationException这个异常。(调用了next方法)代码:package com.example.demo.domain;import java.util.ArrayList;import jav

2022-05-29 03:30:29 1069

转载 mybatis实现自定义分页插件

一、环境搭建创建一个maven工程,然后引入mybatis依赖和mysql依赖即可。<dependency> <groupId>org.mybatis</groupId> <artifactId>mybatis</artifactId> <version>3.0.4</version></dependency><dependency> <groupId>mys

2022-05-27 20:52:23 1988

原创 mybatis-plus分页查询

推荐:MyBatis Plus汇总mybatis-plus分页查询首先创建一个数据库表,如下图所示:然后创建一个Spring Boot项目,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".

2022-05-27 20:44:37 1120

原创 mybatis-plus开启sql日志打印

mybatis-plus

2022-05-26 23:22:29 38382 1

原创 基于Redis实现分布式定时任务调度

项目开发过程中,难免会有许多定时任务的需求进来。如果项目中还没有引入quarzt框架的情况下,我们通常会使用Spring的@Schedule(cron="* * * * *")注解样例如下:package com.slowcity.redis;import org.slf4j.Logger;import org.slf4j.LoggerFactory;import org.springframework.scheduling.annotation.Scheduled;public cl

2022-05-26 23:10:39 2838

原创 Java8流式编程GroupBy和求最值示例

流的创建(演示常用的)数组创建Arrays.streamArrays的静态方法stream() 可以获取数组流 String[] arr = { "a", "b", "c", "d", "e", "f", "g" }; Stream<String> stream = Stream.of(arr); Stream<String> stream1 = Arrays.stream(arr);集合创建Collection接口提供了两个默认方法创建流:str

2022-05-26 10:26:24 931

原创 Hutool工具类TreeUtil的使用(记录)

hutool

2022-05-20 21:51:52 1124 1

原创 JDK8给Tomcat配置https

第一步:生成秘钥库采用JDK自带的keytool工具生成秘钥别名 xieh1234 存储路径 D:\cas\keystore\keytool -genkey -v -alias xieh1234 -keyalg RSA -keystore D:\cas\keystore\xieh1234.keystore-alias 表示证书的别名,一个keystore文件中可以存放多个alias。-keyalg RSA 表示密钥算法的名称为RSA算法-keystore是生成的或者已有的keyst..

2022-01-06 10:55:50 598

转载 springboot使用工具类获取IOC容器中的bean对象

package com.dzqc.yx.util;import org.springframework.beans.BeansException;import org.springframework.context.ApplicationContext;import org.springframework.context.ApplicationContextAware;import org.springframework.stereotype.Component;@Componentpub.

2021-12-23 20:23:04 867

原创 left join注意事项

一、【问题描述】客户表(CLT.CSM_BASEINFO)左连接证件信息表(CLT.CSM_CERTINFO),通过客户名称查询客户信息。1)证件信息表的字段筛选条件,放到on后面,查询结果正常SELECT clt.CLT_COD, ctf.CTF_NBR FROM CLT.CSM_BASEINFO clt LEFT JOIN CLT.CSM_CERTINFO ctf ON clt.CLT_UID = ctf.CLT_UID...

2021-12-23 20:21:07 2069

原创 SpringBoot中使用Redis的发布/订阅模式

redis的发布订阅模式,使发布者和订阅者完全解耦1.pom.xml and application.properties<!-- 引入redis --> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-redis</ar..

2021-12-16 16:25:22 3047

原创 ElasticsearchTemplate替换为ElasticsearchRestTemplate(Transport Client替换为RestHighLevelClient)

在Elasticsearch8.0的版本中也将完全移除TransportClient,其次有些es有些账号不能通过 9300端口连接所以项目中打算由RestHighLevelClient 替换掉 Transport Client版本这里给一张springboot官方的版本推荐这里我的springboot版本为 2.1.6.RELEASE Elasticsearch 版本为 6.8.2升级需要的maven依赖:<dependency> <g...

2021-12-16 11:50:56 3320

原创 ElasticSearch6.X版本自动添加时间戳

需求:根据时间提取es数据解决:为es的记录添加时间戳1、方法配置时间戳 pipelinePUT _ingest/pipeline/my_timestamp_pipeline{ "description": "Adds a field to a document with the time of ingestion", "processors": [ { "set": { "field": "@timestamp", "value

2021-12-15 15:51:53 3403

原创 SpringBoot整合Quartz 实现分布式定时任务调度

一、Quartz集群架构Quartz 是 Java 领域最著名的开源任务调度工具。在上篇文章中,我们详细的介绍了 Quartz 的单体应用实践,如果只在单体环境中应用,Quartz 未必是最好的选择,例如Spring Scheduled一样也可以实现任务调度,并且与SpringBoot无缝集成,支持注解配置,非常简单,但是它有个缺点就是在集群环境下,会导致任务被重复调度!而与之对应的 Quartz 提供了极为广用的特性,如任务持久化、集群部署和分布式调度任务等等,正因如此,基于 Quartz .

2021-12-14 09:19:53 1862 1

原创 ElasticSearch使用kibana控制台查询示例(时间范围查询)

记录一下日期查询问题"format": "yyyy-MM-dd HH:mm:ss||yyyy-MM-dd||epoch_millis"# 创建索引PUT my_date1{ "mappings": { "properties": { "publicDate": { "type": "date", "format": "yyyy-MM-dd HH:mm:ss||yyyy-MM-dd||epoch_millis", // 不管

2021-12-09 10:50:16 10922

原创 js的clientXY、pageXY、screenXY、offsetXY属性对比

一、clientX、clientY点击位置距离当前body可视区域的x,y坐标二、pageX、pageY对于整个页面来说,包括了被卷去的body部分的长度三、screenX、screenY点击位置距离当前电脑屏幕的x,y坐标四、offsetX、offsetY相对于带有定位的父盒子的x,y坐标五、x、y和screenX、screenY一样...

2021-11-14 20:48:23 211

原创 基于javax的websocket服务端实现心跳机制

websocket连接类package com.dnn.controller.inter;import java.io.IOException;import java.text.SimpleDateFormat;import java.util.Calendar;import java.util.Date;import java.util.Set;import java.util.concurrent.CopyOnWriteArraySet;import javax.websocke

2021-11-14 20:44:30 2334 1

原创 记录SpringBoot和SpringCloud版本对应关系

官方参考:https://spring.io/projects/spring-cloudSpringCloud版本 SpringBoot版本 Hoxton 2.2.x 2.2.x Greenwich 2.1.x 2.1.x Finchley 2.0.x 2.0.x Edgware 1.5.x 1.5.x Dalston 1.5.x 1.5.x

2021-05-29 16:45:25 171

原创 使用jwt记录

pom依赖 <!-- jwt依赖--> <dependency> <groupId>io.jsonwebtoken</groupId> <artifactId>jjwt</artifactId> <version>0.9.1</version> </dependency&

2021-05-22 17:30:38 8160

原创 @ControllerAdvice和ErrorPageRegistrar接口配置错误页面的问题

@ControllerAdvice配置讲解:package cn.org.spring.wechar.exception;import cn.org.spring.wechar.bean.Result;import lombok.extern.slf4j.Slf4j;import org.springframework.http.HttpStatus;import org.springframework.web.bind.annotation.ControllerAdvice;import

2021-05-20 21:42:46 754

原创 Redis缓存击穿,穿透,雪崩问题和解决方案

缓存穿透缓存穿透是指查询一个一定不存在的数据,由于缓存是不命中时被动写的,并且出于容错考虑,如果从存储层查不到数据则不写入缓存,这将导致这个不存在的数据每次请求都要到存储层去查询,失去了缓存的意义。在流量大时,可能DB就挂掉了,要是有人利用不存在的key频繁攻击我们的应用,这就是漏洞。解决方案有很多种方法可以有效地解决缓存穿透问题,最常见的则是采用布隆过滤器,将所有可能存在的数据哈希到一个足够大的bitmap中,一个一定不存在的数据会被这个bitmap拦截掉,从而避免了对底层存储系统的查询压力。

2021-04-26 10:36:29 97

原创 Java日期工具类:获取指定月份周明细和获取两个月份间隔月份明细

获取指定月份周明细package com.ruoyi.ad.util;import java.text.SimpleDateFormat;import java.time.*;import java.time.temporal.ChronoUnit;import java.time.temporal.TemporalAdjusters;import java.time.temporal.WeekFields;import java.util.Date;import java.util

2021-04-16 13:07:40 532

原创 Springboot 验证码生成图片格式和base64编码格式

生成验证码:提供一个接口,这个接口里,我们将生成的验证码存入session,然后将验证码以图片格式或者base64编码串返回给调用端。校验验证码:提供一个接口,这个接口里,我们收到调用端传过来的校验码,然后从session取出验证码,两个验证码都全部转小写,进行无大小写区分匹配校验,返回true/flase 。存储验证码:生成的验证码,在未生成图片的时候,就将4位验证码字符先存入session,以‘JCCODE’作为存取session的key。创建工具类:import javax..

2021-03-31 10:27:51 898

原创 Java实现获取指定长度随机字符串

思路:使用assic码表,三个范围:数字(48-57),大写字母(65-90),小写字母(97-122)代码:import java.util.Random; /** * 随机字符串工具 * * @author volitation * */public class RandomString { /** * 获取指定长度随机字符串 * * @param length * @return */ public static String getRan

2021-03-29 13:55:23 674

原创 控制PSQL的时间戳timestamp精度

控制PSQL的时间戳timestamp精度问题:select now()结果:需求:只保留到秒的级别:select now()::timestamp (0) // 返回时间类型或select ('now'::text)::timestamp(0) without time zone //返回文本类型结果:...

2021-03-19 18:30:59 872

原创 Java实现对象深度克隆

两种方式:  1). 实现Cloneable接口并重写Object类中的clone()方法;  2). 实现Serializable接口,通过对象的序列化和反序列化实现克隆,可以实现真正的深度克隆,代码如下import java.io.ByteArrayInputStream;import java.io.ByteArrayOutputStream;import java.io.ObjectInputStream;import java.io.ObjectOutputStream;impo

2021-03-07 15:45:23 905

原创 maven项目右键没有maven菜单选项和Spring Tool Suite 导入SpringBoot项目步骤以及没有【boot】标识的处理

maven项目右键没有maven菜单选项从SVN导入后,右击项目没有“Maven”菜单项:只需一步,右击项目==》“Configure”==》“Convert to Maven Project”:然后再次查看右键菜单,会发现“Maven”菜单项已经出现了:出现该问题的原因是,从Git导入项目以后,Eclipse并不知道这是一个Maven项目,所以右击不会有“Maven”选项。需要我们手动转换一下,这样Eclipse才能识别。Spring Tool Su...

2021-03-05 12:03:03 1087

原创 Java用*号画菱形(面试题)

题目如下:代码:package com.xieh;import java.util.ArrayList;import java.util.List;import java.util.Scanner;/** * * @author 谢辉 * 思路如下: * 1、一个菱形的行数肯定都是奇数行。例如1,3,5,7,9 * 2、从第一行开始1个*号,后面每行依次在上一行的基础上每次递增2 * 3、得到最大行数和最大行数需要的*的数量,可以绘画菱形了 */public

2021-03-04 10:14:01 627 6

原创 JS获取当月windows显示的日历(简易版本)

JS代码:/** * 要求格式yyyy-MM * @param {Object} currentMonth 当前月份 */function getCalendar(currentMonth) { if(currentMonth.indexOf("-") < 0) { return; } var calendar = []; var myDate = currentMonth.split("-")[1] * 1; computeDate(currentMonth).forEa

2021-01-29 22:26:13 664

原创 干支纪年

干支纪年表代码实现:package com.xieh;public class Demo { public static void main(String[] args) { // System.out.println(gzYear(1911)); for (int i = 1800; i < 2035; i++) { System.out.println("年份:" + i); System....

2021-01-22 15:28:48 208 1

原创 JS实现纯前端将数据导出Excel两种方式亲测有效

由于项目需要,需要在不调用后台接口的情况下,将json数据导出到excel表格,参考了好多资料以及很多大佬写的博客终于实现,兼容chrome没问题,其他还没有测试过,这边介绍两种实现方式,并附上代码和gif动图,博主不才还望轻喷,代码可直接copy运行方法一将table标签,包括tr、td等对json数据进行拼接,将table输出到表格上实现,这种方法的弊端在于输出的是伪excel,虽说生成xls为后缀的文件,但文件形式上还是html,代码如下:<html><meta ch

2021-01-19 16:36:08 1705 2

空空如也

空空如也

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

TA关注的人

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