自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 maven 安装本地jar失败 错误指南

mvn install:install-file -Dfile=文件地址 -DgroupId=“com.allinpay.sdk” -DartifactId=top-sdk-java -Dversion=“1.0.5” -Dpackaging=jar。mvn install:install-file -Dfile=文件路径地址 -DgroupId=com.allinpay.sdk -DartifactId=top-sdk-java -Dversion=1.0.5 -Dpackaging=jar。

2023-10-18 10:17:36 1151

原创 Mybatis-Plus 添加插件实现禁止全表更新和全表删除操作

MyBatis Plus 提供了 BlockAttackInnerInterceptor (阻断攻击Sql解析器) 插件,该插件可以阻止全表更新和删除操作。在一定程度上,保证了数据库数据的安全。下面将通过示例介绍怎样使用该插件:

2023-05-19 17:32:13 2807

原创 支付宝小程序授权登录 (Java 后台篇)

实现支付宝小程序授权登录功能, 本文主要是介绍支付宝小程序授权登录流程,与关键登录与处理代码.

2023-05-15 16:33:40 4091

原创 Maven Package 的 jar 包服务器运行时找不到类.

Maven本地将项目打成jar包后,部署服务器运行时报错,异常大概是检索不到某些类文件.boot-inf目录是我们使用spring提供的maven插件打出来的包。包里的公共包日期不是最新的版本,应该是少了公共包安装这一步骤.问题解决!Maven Package 的 jar 包服务器运行时找不到类.

2023-05-15 14:53:07 2366

原创 工作文件分类和整理方法

工作文件分类和整理方法前言 :首先是遇到了找某些想要的文件花费大量的时间,文件非常的散乱,没有很好的归类这样的问题. 无论在工作中还是生活中都得学会如何更科学地管理文件.

2023-05-14 17:54:25 1775

原创 IntelliJ IDEA 接入ChatGPT (免费,无需注册)生产力被干爆了!

IntelliJ IDEA 接入ChatGPT前言 :今天给大家介绍一款好用的插件 可以帮助我们写代码,以及语言上的处理工作,以及解释代码。让我们的生产力大大提高!

2023-04-25 10:07:31 14675 6

原创 编程式事务 (Java)

编程式事务可以支持编程式事务和声明式事务。提供的最原始的事务管理方式是基于编程式事务。而的编程式事务管理是使用模板方法设计模式对原始事务管理方式的封装。编程式事务是一种在数据库操作中使用的事务处理方式,通过编写程序来控制事务的提交或回滚。与声明式事务相比,编程式事务需要手动指定事务的启动、提交和回滚等操作,具有更精细的控制能力。编程式事务可以根据业务逻辑和数据操作的复杂度进行灵活的控制和处理,保证数据的一致性和完整性;编程式事务代码可以直接显示了事务的边界和执行顺序,方便理解和调试;

2023-04-15 15:34:44 4615

原创 记 MybatisPlus 使用 saveBatch方法批量插入时雪花算法ID重复问题.

批量插入的实体ID属性使用 注解 @TableId(type = IdType.ASSIGN_ID) 方式 实现ID生成.代码中需要批量插入实体数据,使用 saveBatch(List); 时报数据库错误: ID KEY 条目重复.

2023-04-15 15:07:57 7119 8

原创 后台返回前端 is....开头字段被屏蔽

的属性,它的方法也是isDeleted(),RPC框架在反向解析的时候,“以为”对应的属性名称是deleted,导致属性获取不到,进而抛出异常.前端收到的字段名与定义的不一致!与往常一样前端联调接口,收到前端同事的反馈说两个相同的接口返回的某个字段却不一样.【强制】POJO类中布尔类型的变量,都不要加is,否则部分框架解析会引起序列化错误。所以规范变量名是最佳推荐的.当然还有下面几种方式能够比较方便的解决这个问题.后台返回前端is....开头字段被屏蔽(Java)...

2022-08-02 15:03:28 3786

原创 代码读取系统环境变量(Java)

代码读取系统环境变量(Java)        代码中如何获取到系统环境变量里的信息呢,下面讲述 java项目中通过读取系统环境变量后为SpringBoot项目设置配置信息.//加载Spring的应用上下文AnnotationConfigApplicationContext context = new AnnotationConfigApplicationContext();//ConfigurableEnvironme.

2021-12-07 09:49:51 2267

原创 Java 项目正向代理配置

Java 项目正向代理配置 线上部署的服务器需要请求外网资源 , 但因考虑到安全因素 , 内部服务器与外界进行隔离,内部无法对外部发起请求.所以需要通过代理商服务器来请求外网.关于正向代理以及反方向代理代理配置 ://https代理配置 System.setProperty("https.proxyHost", PROXY_HOST); //代理服务器地址 System.setProperty("https.proxyPort", PROXY_PORT); //代理服务器端口 //ht.

2021-12-06 11:42:34 1652

原创 APP后台 无密码登录 Security 认证流程思路

APP后台 无密码登录 Security 认证流程思路 后台使用spring security,但是app端显然不能使用像web端登录那样的处理方式,所以如何"骗过"spring security",下面介绍app接入短信登录与一键登录后的 security认证流程。基本流程(伪代码展示) ://短信登录public Object SMSLogin(忽略信息参数){ // 构建一个由账号密码组成的认证对象,在这个构造器内部会将对应的信息赋值给各自的本地变量,并且会调用父类Abstrac.

2021-07-27 11:24:43 2969

原创 java 生成指定范围随机数 于 生成 大小写字母 数字 符号 随机成分字符串

随机字符串生成器 无 jar 依赖实现代码 :/** * @author LXH-404 * @Classname RandomUtil * @Description 随机生成器 */public class RandomUtil { //大写字母字符池 private final static String[] CAPITAL = {"A", "B", "C", "D", "E", "F", "G", "H", "I", "J", "K", ".

2021-05-11 17:02:27 596

转载 java 开发手册 (一) [编程规约 之 命名]

一. 编程规约 (一) 命名风格 :1. 【强制】代码中的命名均不能以下划线或美元符号开始,也不能以下划线或美元符号结束。反例:_name / __name / $name / name_ / name$ / name__2. 【强制】所有编程相关的命名严禁使用拼音与英文混合的方式,更不允许直接使用中文的方式。说明:正确的英文拼写和语法可以让阅读者易于理解,避免歧义。注意,纯拼音命名方式更要避免采用。正例:ali / alibaba / taobao / cainiao/ aliyun/ y.

2021-05-10 10:15:52 141

原创 利用java反射机制实现接口参数校验 [ 反射机制()一) ]

利用java反射机制实现接口参数校验 业务场景 :有许多添加或修改操作的接口需要记录操作人的 id 和名称等信息。 所以在接口执行业务代码前需要校验操作人信息,因为传进来的对象不同,但都有操作人的信息所以使用动态获取对象信息的方式来校验参数(反射)。为了省去大量的校验重复代码,这里使用反射来实现。

2021-05-08 11:17:53 549

原创 Java 配置全局时间格式

Java 配置全局时间格式 方案 :  ① 配置文件添加配置项 :spring: # jackson时间格式化 jackson: time-zone: GMT+8 date-format: yyyy-MM-dd HH:mm:ss  ② 添加配置类 :/** * @author LXH-404 * @Classname LocalDateTimeSerializerConfig * @Descripti

2021-04-28 17:42:43 1204

原创 List 对象去重 案例

多个 List 合并之去重 (Java) 场景 : 一个列表集合需要合并多个列表,且不能出现重复的元素.例子 : 权限业务, 一个账号有多个角色 . 每个角色有不同的权限,其中不同角色之间可能会出现重复的权限.方案 :(一) 代码 : (效率高 , 利用集合特性合并去重一步到位)Set<Object> set = new HashSet(); //合集List<Object> listA = new ArrayList<>(); //A集合List&l

2021-04-28 09:08:41 693

原创 MyBatis-Plus 主键自动生成源码解析 (问题: 主键生成失效???)

MyBatis-Plus 主键自动生成源码解析 (及问题主键生成失效?) 原因:今天测试一条增加功能时,给我报了个错误:(如下)### Error updating database. Cause: java.sql.SQLIntegrityConstraintViolationException: Column 'id' cannot be null很普通的一个问题 , 数据库的id字段是主键不为null的,插入时为空.约束限制导致这个异常抛出.思路:1.首先检查了该有的注解加上没:

2021-04-08 17:11:38 1534 1

原创 SpringSecurity中使用 BCryptPasswordEncoder 加密及解密

SpringSecurity中使用 BCryptPasswordEncoder 加密及解密 1.加密new BCryptPasswordEncoder().encode(明文密码);相同密码每次加密的结果都不同.具体原因不做详细解释(盐值原因)2.匹配Boolean bool = bCryptPasswordEncoder.matches(明文输入的密码,加密后的密码);...

2021-04-02 11:50:21 2402

原创 Nacos (本地 Windows运行)

Nacos Windows10 运行示例 1. 下载 Nacos 服务文件.Windows: https://pan.baidu.com/s/1nG3A8kUhzJqjD1PnVUmCRw Linux: https://pan.baidu.com/s/1Z6h80MCmKFSTl3o68VbjDA 提取码:lxh62. 在文件夹%nacos\ conf\ 下找到 nacos-mysql.sql 数据库脚本文件.然后创建名为 nacos 的数据库并执行脚本.(注意数据库得是5.5以上的,

2021-03-15 22:19:52 1808 1

原创 CAP 定理和 BASE理论 (了解分布式事务理论模型)

分布式事务理论模型 一.CAP定理首先了解下CAP 概念 : 一致性 (C:Consistency) : 数据在多个副本中要保持强一致性,[写操作之后的读操作,必须返回该值].可用性 (A:Availability) : 系统对外提供服务必须一直处于可用状态,在任何故障下,客户端都能在合理的时间内获得服务器的非错误响应. [收到请求服务器就会给出回应].分区容错性 (P:Partition Tolerance) : 网络分区之间的通信可能失败的情况下,系统还能继续运行.(概念图如下:)&

2021-02-20 15:13:51 399 2

原创 程序员才看得懂的祝福语(程序员送祝福啦)

程序员才看得懂的祝福语冒泡排序,选择排序,插入排序,快速排序,堆排序,归并排序,希尔排序,桶排序,基数排序新年帮您排忧解难。有向图,无向图,有环图,无环图,完全图,稠密图,稀疏图,拓扑图祝您新年宏图大展。最长路,最短路,单源路径,所有节点对路径祝您新年路路通畅。二叉树,红黑树,van Emde Boas树,最小生成树祝您新年好运枝繁叶茂。最大流,网络流,标准输入流,标准输出流,文件输入流,文件输出流祝您新年顺顺流流。线性动规,区间动规,坐标动规,背包动规,树型动归为您的新年规划精彩。散列表,哈

2021-02-12 14:58:59 1848 1

原创 MySQL启动异常:【checksum mismatch in data file】

MySQL启动异常:【checksum mismatch in data file】起因起因本机安装了两不同版本的数据库 , 然后把新装的数据库又给删了,再次尝试启动老数据库时报 1067 异常。解决先查看下日志,看下是啥具体原因导致MySQL启动异常。win10系统可以在 计算机管理 -> 系统工具 -> Windows日志 -> 应用程序 中查看错误日志情况也可以在 MySQL的数据存储文件中 [data] 里找到日志文件,里面有更详细的记录。日志记录:[Not

2021-01-19 17:49:45 1985

原创 SpringCloud整合Ribbon配置 饥饿加载 (提高首次请求的访问速度)

SpringCloud整合Ribbon配置 饥饿加载 首言SpringCloud会为每个名称的 Ribbon Client 维护一个子应用程序上下文(SpringFramework中的父子上下文),此上下文默认是懒加载的。也就是说指定名称的RibbonClient第一次请求时,对应的上下文才会被加载。因此,首次请求往往会比较慢。从SC的D版本开始就可以配置饥饿加载。例子 :ribbon: eager-load: enable: true clients: client1,client2

2021-01-11 11:36:24 932

原创 SpringBoot项目中排除@ComponentScan注解扫描的类

SpringBoot中使用@ComponentScan排除指定类 问题 ?在 SpringBoot项目中有时候某些类不需要被 @ComponentScan注解给扫描到, 比如在给某个服务的Ribbon自定义配置类时,为得防止 @Configuration注解的类所在的包与 @ComponentScan扫描的包重叠.解决 :使用 @ComponeentScan 的 excludeFilters 属性进行设定我们需要排除的类.例子 :@ComponentScan(excludeFilters

2021-01-11 10:06:32 5139 3

原创 什么是分布式锁? 为啥需要分布式锁?

分布式锁的由来当然是因为分布式架构的出现而产生的. 在之前的单体架构中 , 面对线程安全的问题可能使用 Java 提供本篇文章就围绕以上三个问题来讲述分布式锁的概念.分布式锁的由来当然是因为分布式架构的出现而产生的. 在之前的单体架构中 , 面对线程安全的问题可能使用 Java 提供的 ReentrantLcok 或 Synchronized 便足矣. 但是随着业务不断发展,这时单机满足不了,于是采用分布式部署的方式. 虽然一定程度解决了性能的瓶颈 , 但是也带来了许多分布式相关的问题. 就分布式锁而

2020-12-17 13:58:35 4874 7

原创 使用mysqldump备份数据库

执行备份命令 : mysqldump -h[主机地址] -u[账户名] -p[密码] [数据库名] > D:/backupfile.sql执行成功后 , 打开文件会发现 insert 语句只有一条 , 一次性插入 . 这样有可能表数据太多导致溢出 , 可以适当调整. 如果想要分多条 insert 插入可加上 --skip-opt

2020-12-09 16:07:55 2366 5

原创 Excel数据导入数据库(Java)

首先说明下读写Excel三种常用的技术: 1. POI : 效率高,操作相对JXL复杂,支持公式,宏,图像图表,一些企业应用上会比较实用.能够修饰单元格属性.字体 数字 日期操作. 2. FASTEXCEL: 不可操作样式,推荐简单的导入,速度快. 3. JXL : 效率低,简单.部分支持.能够修饰单元格属性,但没有POI强大.同样支持字体 数字 日期操作.

2020-11-20 08:51:07 2002 2

原创 KafKa 启动异常 : ERROR Failed to clean up log for __consumer_offsets-30 in dir 另一个程序正在使用此文件,进程无法访问

KafKa运行报错 : java.nio.file.FileSystemException: 另一个程序正在使用此文件.

2020-10-22 21:40:57 3778

原创 使用按钮(button)实现文件上传

使用按钮来实现文件上传的功能 今天写项目,实现一个图片上传功能,为了美观点就不想使用 它, 因为真滴丑~ .然后就使用一个按钮来实现一个文件上传,既美观又实用,在此分享给大家.=> html中代码<button class="btn btn-theme" onclick="upload.click()"><input type="file" name="upload" id="upload" style="display: none;" />第一个是普通按钮给

2020-10-14 18:27:43 13893

原创 java.lang.NoSuchMethodError: com.google.gson.JsonParser.parseString(Ljava/lang/String;)............

问题 :项目中完成短信发送验证码,用到某平台的SDK接口,结果启动模块时报错,抛出 java.lang.NoSuchMethodError: com.google.gson.JsonParser.parseString(Ljava/lang/String;)Lcom/google/gson/sonElement; 异常.原由 :开始感觉也没多大毛病.可能就是用它SDK本身用的某个jar包升级了,已经不用或没有这个方法. 第一想到的就是找下项目中 jar 版本入手.解决 :找到是GosnJa

2020-09-27 21:51:12 10152 4

原创 Shiro集成Redis缓存时 Redisjava.io.NotSerializableException: org.apache.shiro.util.SimpleByteSousite

问题 :今天在SpringBoot 使用 Shiro 集成 Redis 缓存时给我来了个org.apache.shiro.cache.CacheException:org.crazycake.shiro.exception.SerializationException: deserialize error错误, 具体错误如下:Caused by: java.io.NotSerializableException: org.apache.shiro.util.SimpleByteSou site描

2020-08-12 11:18:14 1682 3

原创 JAVA虚拟机 GC(垃圾回收机制) 之 如何使JVM崩溃 .

从字面意思来看 , 用一段接地气的话来描述 GC 呢 , 就是将程序所产生的垃圾进行回收处理也就是生活中的环卫工人 , 如果还有人问为啥要处理嘞? 这个问题问得好 ! ,那如果城市不进行垃圾处理,迟早地球就得被垃圾爆满. GC 也是同样的道理, 在JVM运行的环境中(内存)也会产生垃圾,不对垃圾进行处理的话 , 随着时间的推移 ,就会发生 内存溢出

2020-07-19 15:42:56 2351 1

原创 java虚拟机 JVM详解 内部原理 (小白必看)

揭开 java平台的神秘面纱 导读         一个java程序员的水平高低最终取决于对 JVM (java虚拟机) 的了解程度 .         首先这篇文章带大家对 JVM 进行一个初步的了解 ,从下面两个问题进行解剖 。         1 . 什么

2020-07-18 18:01:34 2577

原创 使用网页代码快速写出你自己的第一个手机App

如果你会写html代码的话,那这篇文章带你快速也能写出一个移动客户端应用(安卓&IOS)

2020-06-28 12:14:03 2957

原创 ES6 Promise 对象 详解新特性

Promise 对象 Promise 是个啥?是异步编程的一种解决方案,其实是一个对象,自己身上有all、reject、resolve这几个方法,原型上有then、catch等方法。主要用于异步计算.可以将异步操作队列化,按照期望的顺序执行,返回符合预期的结果.可以在对象之间传递和操作promise,帮助我们处理队列.    通俗点 ,...

2020-04-29 17:30:39 1666 5

原创 ES6 模块 新特性

ES6 模块 背景ES6引入了模块化 , 打个比喻 , 之前的js代码里的东西相当于公共设施,“共享” . 这样就导致了很多的毛病,特别是项目复杂 , 大起来 , 毛病百出 非常容易出错 , 例如命名冲突 , 安全问题等 . ES6模块化就是要解决这样的问题 , 让 js 变的更有条理.特点ES6 的模块自动开启严格模式,不管你有没有在模块头部加上 use strict;。模块中可...

2020-04-27 22:47:15 2372 2

原创 ES6 函数 新特性

【ES6 函数 扩展】 函数我觉得在任何一门语言中都非常的重要 , 可以简化代码 , 使代码结构更加清晰 , ES6 中也对函数进行了扩展 , 使函数使用起来非常的方便 , 简洁.箭头函数箭头函数应该是对原函数书写方式来了个改头换面 , 变化是非常大的 , 也很简洁.我们先来看个例子 , 说明它的用法 .//箭头函数var a = () => 1; //没有参数时用...

2020-04-24 15:06:17 2171 12

原创 Python安装 详细教程

前言最近老听说python很火,这好,那不错的,上个网页都到处弹出人工智能学python,大数据学python 的课程,它到底火在哪里呢, 于是上网查找了下资料.python的优势:    据我了解 它代码简洁,功能强大,大数据处理方面是看家本领.顿时感觉,嗯,python有前途.于是自己也安装了,想着就出个教程吧,也是学习python的开始.安...

2020-04-23 09:52:51 2025 3

原创 ES6 数值 新特性

传统方式    在介绍数值的扩展之前来看看旧的规范和使用方式,有对比才能看出不同之处.在ES5中,存在一些全局函数如: isNaN(),parseInt(),parseFloat() 等. 但是大家有没有觉得把这类处理数值的函数归于window 对象有些不妥, 为了规范.在ES6中就把 parseInt() 这类数值相关的函数移植到了 Number 对...

2020-04-22 20:15:59 1629 2

GIT使用手册.pdf

git工具使用手册,基本使用命令.

2021-10-27

空空如也

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

TA关注的人

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