成长
$海阔天空$
道法自然----》立志当当远
展开
-
java怎么比较两个list是否相同?
Java 语言处理判断两个list是否相等原创 2022-12-29 14:44:44 · 12926 阅读 · 8 评论 -
unity生成webgl 运行时,浏览器出现:Unexpected token ‘<‘ 报错的解决办法
unity webgl 生成文件原创 2022-11-12 10:41:50 · 1406 阅读 · 1 评论 -
Win10安装配置node-nvm管理
nvm win10 安装nodejs原创 2022-07-27 13:40:37 · 631 阅读 · 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 阅读 · 0 评论 -
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 阅读 · 0 评论 -
Java设计模式之-构建者模式
构建者模式,又称建造者模式,将一部负责对象的构建分为许多小对象的构建,最后在整合构建的模式。 构建者模式一般用在构建流程或者组成部件固定的场合,将这些部件分开构建成为组件对象,再将这些组件对象整合成为目标对象。 最佳实例就是组装台式电脑的情况,我们可以分别购买主板、CPU、内存、硬盘等部件,然后将这些部件组装在一起就形成了一台完整的电脑。 参照如下类图可以比较明显了了解编码如何实现构建者模式: 成员分析: Director:控制者类,这是控制整个组合过程,在这个类内部有个Con原创 2022-05-25 22:57:17 · 449 阅读 · 0 评论 -
编写Java程序时的一些经验总结
平时编写Java程序的一些经验总结本文仅仅用来个人的学习总结,如果有重复,请多多谅解;1.方法前或其他适当位置添加多行注释在适当的位置添加注释可以让我们的程序变得更易读,尤其是在编写一些比较复杂业务场景的程序时更重要。当然注释也不要过多,在该加的地方加注释即可(一般是在一些重要变量或是较难理解的方法前添加)。使用多行注释的话还可以在我们调用它的时候给我们一些提示2.擅用卫操作判断非法输入当需要对输入的数据或经前面程序处理过的数据根据一定条件进行不同处理时,我们可以优先判断非法输入,然后再对其它数原创 2022-04-09 20:24:37 · 1231 阅读 · 0 评论 -
jdk8 Optiona使用经验总结
1.Optional<List> o = xxxxxx;这种结构中可能会有o= Optional( [ [] ] );这种情况下,如果调用isPresent();依然返回为true原创 2022-04-06 17:50:16 · 146 阅读 · 0 评论 -
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 阅读 · 0 评论 -
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 · 801 阅读 · 0 评论 -
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 · 419 阅读 · 0 评论 -
获取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 阅读 · 0 评论 -
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 · 1191 阅读 · 0 评论 -
java - websocket 服务端onMessage()方法一操作数据库就报空指针异常
问题描述问 题想用websocket实现新消息提醒功能,就比如a发了一篇文章然后有人回复了a,当a上线时出现消息提醒,如下图后台的onMessage()方法中若是直接用session.getBasicRemote().sendText(“haha”);是可以正常运行的,可是一操作数据库就出了空指针异常…前端js处理:有遇到过相同问题的人吗?求告知…解决方案开发过程中,某个未被spring托管的类(例如MessageComponent)想调用一个被spring托管的对象的方法(例如Message原创 2022-01-05 15:22:05 · 2513 阅读 · 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 · 4688 阅读 · 0 评论 -
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 · 1592 阅读 · 0 评论 -
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 · 1861 阅读 · 0 评论 -
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 · 395 阅读 · 0 评论 -
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 阅读 · 0 评论 -
如何将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 · 7352 阅读 · 0 评论 -
【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 · 1450 阅读 · 0 评论 -
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 阅读 · 0 评论 -
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 · 1082 阅读 · 0 评论 -
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 · 312 阅读 · 0 评论 -
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 · 282 阅读 · 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 · 5822 阅读 · 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 · 1816 阅读 · 2 评论 -
springbootwebflux学习总结(二)
1.lambda: 返回指定接口的对象实例;原创 2021-06-02 15:23:13 · 132 阅读 · 0 评论 -
https证书认证-java
1.首先要确认是双向认证还是单向认证,如果是只需要对服务端的单向认证,则只需要用到根证书,应该就是这里的ca.crt。如果是双向认证,三个都需要用到。如果是java代码作为客户端连接2.单向认证是客户端根据ca根证书验证服务端提供的服务端证书和私钥...原创 2021-06-03 15:43:34 · 691 阅读 · 0 评论 -
几个常用的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 · 283 阅读 · 0 评论 -
springbootwebflux学习总结(一)
1.jdk8自带的函数式接口:原创 2021-06-02 15:20:30 · 412 阅读 · 1 评论 -
JAVA 快速构建树形结构
JDK 1.8+ Node 中pid 为 0 的是根节点原创 2021-06-01 12:11:59 · 354 阅读 · 0 评论 -
Angular11 使用总结
1.Angular官网:中文==》https://angular.cn/docs2.Angular父子组件传值3.Angular路由原创 2021-05-14 16:34:23 · 372 阅读 · 0 评论 -
分布式系统API网关原理及选型
什么是网关?两个独立的局域网之间通信的桥梁/ 或可以理解为外部所有请求都会打在网关上,网关对请求分发路由等处理,隐藏了内部服务的各种API接口网关作用及功能1. 动态路由 根据请求路由到对应的服务上去,如果服务不可用还会有重试机制2. 负载均衡 多服务器提供同一种服务,网关会从注册中心拉取各服务注册信息,然后将请求负载均衡处理3. 流量控制 限制流量 避免内部系统受到冲击4. 统一鉴权 网关对相关权限验证 (请求者的访问权限,还可实现SSO单点登录)...原创 2021-03-18 10:27:57 · 344 阅读 · 0 评论 -
Erlang与RabbitMq下载安装(附上下载资源:windows 64位---版本对应)
HarryXxc 2020-04-18 16:16:29 972 收藏 8分类专栏: JAVA 文章标签: java windows版权今天搞了好久这个,竟然在下载的时候遇到了Erlang与RabbitMQ版本不一致的问题,如果是这样的话就非常头疼,这里附上版本对应查看链接首先介绍一下Erlang的安装(下载地址如下)链接:https://pan.baidu.com/s/188ekEIj_ph1QY12iIk7P9w提取码:z9k112下载完之后直接点击exe文件即可,安装的过...原创 2021-03-08 13:14:15 · 403 阅读 · 0 评论 -
spring.schemas和spring.handlers对xmlns配置文件作用
在很多情况下,我们需要为系统提供可配置化支持,简单的做法可以直接基于Spring的标准Bean来配置,但配置较为复杂或者需要更多丰富控制的 时候,会显得非常笨拙。一般的做法会用原生态的方式去解析定义好的xml文件,然后转化为配置对象,这种方式当然可以解决所有问题,但实现起来比较繁琐, 特别是是在配置非常复杂的时候,解析工作是一个不得不考虑的负担。Spring提供了可扩展Schema的支持,这是一个不错的折中方案,完成一个自定义 配置一般需要以下步骤:[1] 设计配置属性和JavaBean[2] 编写X原创 2021-02-05 14:27:49 · 499 阅读 · 0 评论 -
java泛型关于方法返回值前面的<T>是什么?
public <T> Test<String,T> setCacheObject(String key,T value){ return null; } 前面的T的声明,跟类后面的<T>没有关系。 方法前面的<T>是给这个方法级别指定泛型。请看示例: package com.fanx; public class Fruit { public String toStri...原创 2021-02-01 15:02:51 · 831 阅读 · 0 评论 -
为什么eclipse打不开文件
java.lang.IllegalArgumentException: Index out of bounds at org.eclipse.swt.SWT.error(SWT.java:4704)方法一:修bai改工作空间du换一个新的工作空间即zhi可,若是原来将默认dao工作空间勾中了,没有出来,就zhuan去你的MyEclipse安装路径中(如:D:\dev_IDE\myeclipse\eclipse\configuration\.settings),里面有个org.eclipse.u.原创 2021-01-25 15:55:57 · 3324 阅读 · 0 评论 -
Exception in thread “main“ java.lang.NumberFormatException: For input string
public static Integer functionTest(String value, Function<String, Integer> function) { return function.apply(value); } public static void main(String[] args) {// String value = "woshi ceshi 111"; // 空字符串,不可转换为int// ...原创 2020-12-30 17:35:33 · 3775 阅读 · 0 评论