自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(86)
  • 资源 (2)
  • 收藏
  • 关注

原创 git创建本地分支并关联远程分支

注:本地新建分支, push到远程服务器上之后,使用git pull或者git pull 拉取或提交数据时会报错,必须使用命令:git pull origin dev(指定远程分支);例如:git checkout -b dev,这条命令把创建本地分支和切换到该分支的功能结合起来了,即基于当前分支master创建本地分支dev并切换到该分支下。例如:git branch dev,这条命令是基于当前分支创建的本地分支,假设当前分支是master(远程分支),则是基于master分支创建的本地分支dev。

2023-07-19 18:12:52 2721

原创 Shiro 与 JWT的个人心得

2.shiro的优势在于基于session的单点登录权限管理,在前后端不分离的情况下是具有优势的,但是在前后端完全分离的情况下会因为session的缺点产生相应的缺点。3.在使用token的情况下,都会出现允许同一用户的多端登录情况,因为服务器的token是不会主动过期的,除非用户登陆之后直接重置token,废弃原有的token。如果项目前后不分离,又要提供对外的api,可以选择两种同时使用,或者只使用shiro,将shiro设计为支持session与token两种行为的模式。

2023-06-14 13:47:21 286

原创 shiro碰到的问题 does not support authentication token

每一个Ream都有一个supports方法,用于检测是否支持此Token, 而我在该函数中,默认的采用了return false;修改为了:public class ShiroRealm extends CasRealm 重写这个supports方法。自己写了一个Ream,配置到了SecurityManager中,但是验证的时候,一直报这个错。需在SecurityManager中新增多个realm,把自己自定义的Realm包含进去。查了半天,没进展,最后还是发现自己粗心,代码的问题。

2023-06-09 15:37:59 524

原创 java jdk11 文件流上传

代码调用示例,适用于小文件通过文件流上传。

2023-04-24 13:44:33 211 1

原创 Java 编程开发的30个技巧

例如:ThisIsAClassNamethisIsMethodOrFieldName若在定义中出现了常数初始化字符,则大写static final基本类型标识符中的所有字母。这样便可标志出它们属于编译期的常数。Java包(Package)属于一种特殊情况:它们全都是小写字母,即便中间的单词亦是如此。对于域名扩展名称,如com,org,net或者edu等,全部都应小写(这也是Java 1.1和Java 1.2的区别之一)。equals()hashCode()toString()clone()(implemen

2023-04-18 18:02:26 1569

原创 Ubuntu忘记超级用户root密码,重新设置密码

1启动系统,在启动过程中,反复按Esc键或者shift键(本人亲测反复按或者长按都可以,没必要纠结),直到出现以下界面:(PS: 如果是Thinkpad笔记本,需按住shift键不放同时点击F12)通过上下键移动,选择Ubuntu高级选项(或者有的版本显示的是Advanced options for Ubuntu),然后按’Enter’键,进入如下界面。重启电脑(如果是虚拟机的,重启虚拟机),进入终端,输入命令su - 界面如下。输入一次密码后,按"Enter"键盘,按下回车,再次输入密码,界面如下。

2023-03-22 11:59:13 2429 1

原创 java怎么比较两个list是否相同?

Java 语言处理判断两个list是否相等

2022-12-29 14:44:44 12922 8

原创 unity生成webgl 运行时,浏览器出现:Unexpected token ‘<‘ 报错的解决办法

unity webgl 生成文件

2022-11-12 10:41:50 1399 1

原创 Win10安装配置node-nvm管理

nvm win10 安装nodejs

2022-07-27 13:40:37 630 1

原创 代理模式:cglibProxy,JDKProxy

1.CGLibProxy样例: private void tstCGLibProxy() { AuthLogInterceptor authLogInterceptor = new AuthLogInterceptor(new RealSubject()); Subject proxy = (Subject) authLogInterceptor.getProxy(); proxy.request(); }package com.ywy.j

2022-05-26 13:03:08 104

原创 Java中的对象拷贝-构建者模式

1)使用clone()方法,我们可以对其内的引用类型的变量,再进行一次 clone(),以此达到深拷贝效果。public class DeepCopyTest { public static void main(String[] args) { Addr addr = new Addr("庞各庄"); Person per1 = new Person(1002,"jack",addr); Person per2 = (Person) per1.clo

2022-05-26 10:02:59 113

原创 Java设计模式之-构建者模式

构建者模式,又称建造者模式,将一部负责对象的构建分为许多小对象的构建,最后在整合构建的模式。  构建者模式一般用在构建流程或者组成部件固定的场合,将这些部件分开构建成为组件对象,再将这些组件对象整合成为目标对象。  最佳实例就是组装台式电脑的情况,我们可以分别购买主板、CPU、内存、硬盘等部件,然后将这些部件组装在一起就形成了一台完整的电脑。  参照如下类图可以比较明显了了解编码如何实现构建者模式:    成员分析:    Director:控制者类,这是控制整个组合过程,在这个类内部有个Con

2022-05-25 22:57:17 447

原创 编写Java程序时的一些经验总结

平时编写Java程序的一些经验总结本文仅仅用来个人的学习总结,如果有重复,请多多谅解;1.方法前或其他适当位置添加多行注释在适当的位置添加注释可以让我们的程序变得更易读,尤其是在编写一些比较复杂业务场景的程序时更重要。当然注释也不要过多,在该加的地方加注释即可(一般是在一些重要变量或是较难理解的方法前添加)。使用多行注释的话还可以在我们调用它的时候给我们一些提示2.擅用卫操作判断非法输入当需要对输入的数据或经前面程序处理过的数据根据一定条件进行不同处理时,我们可以优先判断非法输入,然后再对其它数

2022-04-09 20:24:37 1231

原创 jdk8 Optiona使用经验总结

1.Optional<List> o = xxxxxx;这种结构中可能会有o= Optional( [ [] ] );这种情况下,如果调用isPresent();依然返回为true

2022-04-06 17:50:16 146

原创 java判断一个字符串是否为空,isEmpty和isBlank的区别-hutool(StrUtil使用)

实际应用中,经常会用到判断字符串是否为空的逻辑比较简单的就是用 Str != null && Str.length() >0 来判断其实很多java工具集都是有包装好的接口可以使用的比如 StringUtils.isEmpty(String str) 和 StringUtils.isBlank(String str)isEmpty和isBlank的区别在于isEmpty仅仅是判断空和长度为0字符串isBlank判断的是空,长度为0,空白字符(包括空格,制表符\t,换

2022-03-30 11:54:45 4924

原创 JDK8至JDK 11 新增常用API总结<二>

1.本地变量类型推断Java10以后可以用var定义一个局部变量,不用显式写出它的类型。但要注意,被var定义的变量仍然是静态类型,编译器会试图去推断其类型。所以,我们需要注意 1.不兼容的类型是不能重新赋值的! 2.只要编译器无法推断出变量类型,就会编译错误!public static void test1() { var str1 = "local variable type interface"; String str2 = "local variable type interfa

2022-03-25 18:36:14 800

原创 JDK8至JDK 11 新增常用API总结<一>

1.Optional新增:stream()ifPresentOrElse​(Consumer<? super T> action, Runnable emptyAction)or​(Supplier<? extends Optional<? extends T>> supplier)版本: 9orElseThrow()版本: 10isEmpty()版本: 112.CompletableFuture新增:completeOnTimeout​(T va

2022-03-25 14:44:47 417

原创 获取ClassName MethodName

package com.ywy.springboot.testspringboot.util;import lombok.extern.slf4j.Slf4j;/** * TODO 获取当前类名和方法名 助手 */@Slf4j(topic = "c.GuardedObjectV2")public class NameHelper { // 方法1:通过SecurityManager的保护方法getClassContext() public static String ge

2022-02-07 00:31:24 578

原创 java计时工具StopWatch的使用

作为一名程序猿,有时为了查看代码执行效率,以下代码肯定不少写:long start = System.currentTimeMillis();// do something…long end = System.currentTimeMillis();System.out.println(start-end);上面这段代码,只要是个java程序猿肯定都写过,问题是写个一两次还可以忍受,但是要针对复杂逻辑代码进行性能分析的时候,此时需要些大量的计时代码,你就无法忍受了。各位猿不要急,spring给我们

2022-02-06 23:23:38 1188

原创 java - websocket 服务端onMessage()方法一操作数据库就报空指针异常

问题描述问 题想用websocket实现新消息提醒功能,就比如a发了一篇文章然后有人回复了a,当a上线时出现消息提醒,如下图后台的onMessage()方法中若是直接用session.getBasicRemote().sendText(“haha”);是可以正常运行的,可是一操作数据库就出了空指针异常…前端js处理:有遇到过相同问题的人吗?求告知…解决方案开发过程中,某个未被spring托管的类(例如MessageComponent)想调用一个被spring托管的对象的方法(例如Message

2022-01-05 15:22:05 2508 4

原创 Springboot使用ThreadPoolTaskExecutor线程池,多线程调用实例

项目场景:15万条数据需要做逻辑处理,然后存入数据库硬件:windows 4核 i7 16G内存问题描述:响应太慢,服务容易出现卡死原因分析:1.原先是JPA保存,JPA 中save()方法点进去可以看到,源码中还调用了isNew()方法,该方法里面又执行了一次findById(),所以每次JPA保存一条数据都会执行两条sql ,一次查询一次保存或更新2.feign在调用远程时,无响应 原因:1) 使用ThreadPoolTaskExecutor线程池,在submit后,没take().get(

2021-12-16 14:29:47 4681

原创 Java实现BASE64编解码 maven

方法1:<dependency> <groupId>commons-codec</groupId> <artifactId>commons-codec</artifactId> <version>1.12</version></dependency>String str = "Hello World"; try{ byte[] encodeBase64 = Ba.

2021-11-11 12:48:14 1591

原创 vue中使用Base64编码和解码

1、运行如下命令npm install --save js-base642、在项目文件中引入let Base64 = require(‘js-base64’).Base643、在项目文件中使用编码:Base64.encode(‘delivery_asn=1’) //ZGVsaXZlcnlfYXNuPTE=解码:Base64.decode(‘ZGVsaXZlcnlfYXNuPTE=’) // delivery_asn=1...

2021-11-11 12:44:25 1860

原创 git commit -m 提交错误

× prettier --write:[error] src\main\java\com/\TopiclistService.java: Error: Cannot Identify the type of a [error] at JavaParser. (E:\04.IDEA_PROJECT********\node_modules\java-parser\src\productions\classes.js:927:13)[error] at JavaParser.invokeR

2021-11-08 15:21:57 394

原创 idea中Entity实体中报错:cannot resolve column/table/...解决办法。

1.初步判断是编译构建失败,根据具体的实体类跟踪检查:在Mapper中缺少:2.在liquibase中缺少映射:3.maven clean 后重新编译启动,即可;若idea中Entity实体中报错:cannot resolve column…cannot resolve table……问题时解决办法为:第一步:第二步:第三步:OK!...

2021-11-08 13:42:03 874

原创 如何将PEM证书转换成JKS证书

在使用SSL/TLS进行通信的时候,经常需要加载OpenSSL生成的PEM格式证书。由于Java的JDK不支持直接加载PEM格式的证书,所以需要将PEM格式证书转换成Java能够直接加载的JKS格式证书。使用OpenSSL生成自签发的PEM证书可以参考此篇文章:[**OpenSSL Certificate Authority ]**(https://jamielinux.com/docs/openssl-certificate-authority/index.html)假设有三个PEM证书文件:ca.

2021-08-13 16:41:12 7319

原创 【Vue】在 Chrome 中安装 Vue 扩展程序

Chrome 中安装 Vue 扩展程序下载压缩包 :GitHub 最新版本,密码:nvfe解包并进入解压后的 vue-devtools-master 文件夹;在搜索栏输入 cmd ,进入命令提示符案板:命令行中输入npm install,安装所需依赖包;执行: npm run build 命令;进入 vue-devtools-master\shells\chrome 文件中,将 manifest.json 文件打开,找到 background 中的 persistent,改

2021-07-27 14:42:38 4436 5

原创 U盘安装CentOS8问题-dracut:/#

当选择install CentOS7以后一会就会出现错误。报错信息:就是dracut:/# … timeout一大堆。我本来以为是我的启动盘没做好,后来我又重做了好几次都是这问题。安装CentOS7出现dracut:/#……time解决办法安装CentOS7出现dracut:/#……time解决办法安装CentOS7出现dracut:/#……time解决办法安装CentOS7出现dracut:/#……time解决办法解决通过搜索引擎检索,解决办法结果大同小异。在报错信息下面进行如下操作:dracu

2021-07-04 01:48:52 1449

原创 java.lang.NoSuchMethodError: com.google.common.base.Platform.systemNanoTime(

java.lang.NoSuchMethodError: com.google.common.base.Platform.systemNanoTime(是由于gava的版本冲突,但是查询pom文件并没有冲突,最后有效办法是仅仅引入guava ,去掉collections <!--for guava cache--><!-- <dependency> <groupId>com.google.collection

2021-07-01 15:41:59 472

原创 Java解决多线程无法@Autowired注入,手动获取Bean对象

Java解决多线程无法@Autowired注入,手动获取Bean对象问题当我们使用多线程时,又想注入一个service给我们使用,但是我们发现service总是为null。代码示例:`//例1public class TaskComments implements Callable<List> {//注入不进去,总是为null@Autowiredprivate RedisClient redisClient;@Overridepublic List<String>

2021-06-29 19:53:45 1081

原创 Java使用线程读取配置文件内容

public class PropertiesUtil {```javaprivate static Properties prop = null;static { prop = new Properties(); loadData(); Executors.newSingleThreadScheduledExecutor().scheduleWithFixedDelay(new Runnable() { public void run() {

2021-06-29 19:39:36 308

原创 Windows10企业版中安装Docker

1.下载Docker for Windows下载地址:https://docs.docker.com/docker-for-windows/install/#download-docker-for-windowshttps://hub.docker.com/editions/community/docker-ce-desktop-windows/

2021-06-23 22:36:03 281 2

原创 CentOS 8中安装Docker出现和Podman冲突

[root@localhost ~]# sudo yum install docker-ce docker-ce-cli containerd.ioDocker CE Stable - x86_64 1.6 kB/s | 3.5 kB 00:02 Error: Pr..

2021-06-23 17:52:50 5820 2

原创 java.lang.ClassCastException: class sun.security.ssl.SSLSocketFactoryImpl cannot be cast to class or

问题:Feign-httpclientjava.lang.ClassCastException: class sun.security.ssl.SSLSocketFactoryImpl cannot be cast to class org.apache.http.conn.socket.LayeredConnectionSocketFactory (sun.security.ssl.SSLSocketFactoryImpl is in module java.base of loader 'boot.

2021-06-15 20:20:45 1815 2

原创 https证书认证-java

1.首先要确认是双向认证还是单向认证,如果是只需要对服务端的单向认证,则只需要用到根证书,应该就是这里的ca.crt。如果是双向认证,三个都需要用到。如果是java代码作为客户端连接2.单向认证是客户端根据ca根证书验证服务端提供的服务端证书和私钥...

2021-06-03 15:43:34 691

原创 几个常用的maven包

1.MapUtils工具类对应maven包<dependency> <groupId>commons-collections</groupId> <artifactId>commons-collections</artifactId> <version>3.1</version></dependency>2.lombok <dependency> .

2021-06-03 13:23:26 282

原创 springbootwebflux学习总结(二)

1.lambda: 返回指定接口的对象实例;

2021-06-02 15:23:13 132

原创 springbootwebflux学习总结(一)

1.jdk8自带的函数式接口:

2021-06-02 15:20:30 410 1

原创 JAVA 快速构建树形结构

JDK 1.8+ Node 中pid 为 0 的是根节点

2021-06-01 12:11:59 354

原创 Angular11 使用总结

1.Angular官网:中文==》https://angular.cn/docs2.Angular父子组件传值3.Angular路由

2021-05-14 16:34:23 372

Sublime Text 3破解版安装资源.zip

sublime软件安装,包含汉化包、安装程序、安装步骤、注意事项等

2019-05-12

空空如也

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

TA关注的人

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