java
cominglately
时间过得好快 ...
勉力前行
展开
-
线程池应该设多大
【代码】线程池应该设多大。原创 2022-10-14 16:22:18 · 259 阅读 · 0 评论 -
信号量和互斥锁的区别
【代码】信号量和互斥锁的区别。原创 2022-10-12 19:59:10 · 228 阅读 · 0 评论 -
java实现php substr函数(截取字节)
2.1 思路: 字符串转成byte数组,从byte数组中截取需要的部分, 然后再转回字符串。2. java substring截取的是字符, 那么java怎么才能实现subStr呢?1.2 如果字符串编码是gbk 那么中文占2个字节。原创 2022-09-20 16:32:15 · 486 阅读 · 0 评论 -
stream去重
【代码】stream去重。原创 2022-09-19 15:08:48 · 6172 阅读 · 0 评论 -
推荐一个对象对比器
【代码】推荐一个对象对比器。原创 2022-08-25 15:24:54 · 347 阅读 · 0 评论 -
SpringBoot 配置 okhttp3
okhttp3原创 2022-06-19 11:16:53 · 2088 阅读 · 0 评论 -
springboot在项目启动之后执行特定任务的实现方式
文章目录场景解决场景项目经常需要在启动之后完成一些初始化的工作,在整个项目周期只执行一次解决通过监听ApplicationReadyEvent事件实现实现CommandLineRunner接口, 在项目启动之后执行run方法,并传递用于启动应用程序的命令行参数 具体操作如下@Component 注册为bean@Order控制启动顺序,但是不建议使用,顺序意味着有前后依赖,不安全run方法有抛出异常,Spring Boot 会将 CommandLineRunner 作为应用启原创 2022-05-14 22:24:14 · 919 阅读 · 1 评论 -
springboot项目实现事件的监听
文章目录场景解决涉及到的技术点事件监听的实现方式场景微服务在项目启动的时候 需要将自身的一些信息(比如:ip port)注册到管理项目中,方便管理者做请求分发, 那么这就需要捕捉到项目启动事件,项目关闭事件 已完成项目的注册,以及删除; 虽然注册中心可以完成这种功能,但是注册中心做不到精细化的控制。解决项目启动事件捕捉可以依赖ApplicationReadyEvent事件, 下面是测试代码@Slf4j@Componentpublic class ApplicationReady原创 2022-05-08 12:32:30 · 709 阅读 · 0 评论 -
springboot快速的获取bean
文章目录背景实现为什么不直接通过 @Autowired引入ApplicationContext呢?背景bean注册容器中,但是实际项目中是经常要在service中使用这些bean的,这时候就需要快速的获取bean实现定义工具类SpringUtils实现ApplicationContextAware接口, 该接口只有一个setApplicationContext方法,通过入参可以完成bean的获取SpringUtils添加@Component 交给springboot管理public原创 2022-05-02 16:36:00 · 320 阅读 · 0 评论 -
springboot生产项目中线程池的使用
文章目录背景分析技术点解决背景淘宝代打代发项目订单处理流程是这样子的: 通过订单列表接口获取订单号,通过订单详情接口获取商品信息一个线程中轮训订单详情接口的效率是非常低的,所以需要在多线程中请求订单详情。项目使用springboot开发分析实际项目中线程池的控制是需要统一控制的(如果每个团队成员可以随意的创建配置线程池,很快服务器的资源就会被耗尽了),然后按照模块设置线程池。因为要使用各个订单的商品信息,所以需要在主线程拿到子线程的运行结果,基于方便的考虑 所以多线程通过Comple原创 2022-05-01 23:24:52 · 727 阅读 · 0 评论 -
ThreadPoolExecutor线程池的创建
文章目录场景内容场景项目中需要设置公用线程池, 避免大家随意创建线程池造成虚耗资源内容 // 创建线程池。线程池的"最大池大小"和"核心池大小"都为1(THREADS_SIZE),"线程池"的阻塞队列容量为1(CAPACITY)。 ThreadPoolExecutor pool = new ThreadPoolExecutor( 1, 1, 0,原创 2022-04-28 15:40:26 · 2460 阅读 · 0 评论 -
idea 引入本地jar包的方式
文章目录场景解决场景对接淘宝的代打代发项目,需要进入淘宝的sdk,而开放平台没有提供maven库,所以需要需要将sdk从开平下载到本地之后导入到系统解决通过idea导入, 这种会编译失败: Caused by: java.lang.NoClassDefFoundError: com/taobao/api/response/DaifaSupplierOrderQueryResponse$DaifaScpOrderModel通过pom文件导入 <!--淘宝代打代原创 2022-04-21 15:11:19 · 4117 阅读 · 1 评论 -
switch使用枚举类的提示 constant expression required
文章目录场景解决场景接口状态字段响应是个字符串, 使用一个枚举值接受,但是switch的时候 提示: constant expression required解决switch转化成枚举值,然后比较枚举值转化成枚举值的方式可以自定义@Getter@AllArgsConstructorpublic enum TopDaiDaDistributeStatusEnum { DISTRIBUTE("DISTRIBUTE", "已分配"), CANCEL("CANCEL", "原创 2022-04-19 19:54:08 · 1230 阅读 · 0 评论 -
RestTemplate简单使用
文章目录场景场景//1. 简单Get请求String result = restTemplate.getForObject(rootUrl + "get1?para=my", String.class);System.out.println("简单Get请求:" + result);//2. 简单带路径变量参数Get请求result = restTemplate.getForObject(rootUrl + "get2/{1}", String.class, 239);System.out.原创 2022-04-14 14:23:10 · 231 阅读 · 0 评论 -
rabbitmq User can only log in via localhost
文章目录场景解决场景ubuntu18.04使用guest登录rabbitmq管理界面报错 :{“error”:“not_authorised”,“reason”:“User can only log in via localhost”}解决guest是默认生成账号,不允许通过外网IP登录; 所以新建一个账号1. 添加用户 sudo rabbitmqctl add_user carsonlius password2. 设置管理员权限 sudo rabbitmqctl原创 2022-04-12 11:08:58 · 2260 阅读 · 0 评论 -
springboot动态切换多租户
文章目录场景pom配置创建2个演示的数据库3. 创建2个简单的接口3.1 用户列表接口3.2 商品列表接口4. 定义基本上数据类型BaseDto (用来标识卖家信息 生产环境可以使用token替代)创建切面实现原理场景租户多且不固定且多服务场景动态实现pom配置<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="原创 2022-04-06 18:20:31 · 1344 阅读 · 0 评论 -
使用ZipEntry解压zip文件报错: java.lang.IllegalArgumentException: MALFORMED
文章目录场景分析解决场景使用ZipEntry解压zip文件报错: java.lang.IllegalArgumentException: MALFORMED 分析压缩文件中含有中文, 在ZipCoder调用toString函数报错。此处识别成了utf8,所以 在解压时设置成gbk字符集就行了String toString(byte[] ba, int length) { CharsetDecoder cd = decoder().reset(); int原创 2022-03-30 16:06:58 · 2323 阅读 · 0 评论 -
feign在DTO传参时GET请求自动转成POST请求
文章目录场景解决场景1. 网关请求发送到后端从GET变成了POST2. 代码如下:// 使用openfeign发请求时,发现GET请求转成了POST@FeignClient(name = "pd-auth-server", fallback = ResourceApiFallback.class)public interface ResourceApi { // 获取所有需要鉴权的资源 @GetMapping("/resource/list") R<List&g原创 2022-02-21 18:42:58 · 897 阅读 · 0 评论 -
---在yml配置文件中含义
文章目录场景作用场景接手一个项目,看到了多个重复的配置通过`----` 隔开的方式存放在一个文件中作用单文件中可以通过`---`实现多文件的效果原创 2022-02-10 16:31:26 · 1226 阅读 · 0 评论 -
SpringBoot使用Swagger2出现Unable to infer base url. This is common when using dynamic servlet registrati
文章目录场景解决场景SpringBoot使用Swagger2 Unable to infer base url. This is common when using dynamic servlet registration or when the API is behind an API Gateway. The base url is the root of where all the swagger resources are served. For e.g. if the api is ava原创 2021-10-30 17:52:15 · 391 阅读 · 0 评论 -
springboot 集成redis key乱码\xac\xed\x00\x05t\x00\x0eHAOKE_HOT_WORD
文章目录场景分析解决场景springboot集成redis集群 检查key时发现key是二进制格式的 \xac\xed\x00\x05t\x00\x0eHAOKE_HOT_WORD分析RedisTemplate<K, V>模板类在操作redis时默认使用JdkSerializationRedisSerializer来进行序列化解决序列化方式切换成StringRedisSerializer通过配置bean的方式配置## RedisClusterConfig.java@C原创 2021-09-18 17:10:22 · 491 阅读 · 0 评论 -
springboot es集群 node {#transport#-3}{OpNtNd6LRTaWJFmR7GyqEQ}{vagrant}{192.168.2.29:9302} not part of
文章目录场景原因分析解决场景springboot使用es集群,项目启动报错原因分析报错内容node {#transport#-3}{OpNtNd6LRTaWJFmR7GyqEQ}{vagrant}{192.168.2.29:9302} not part of the cluster Cluster分析cluster-name写错了 es-itast-cluster 在实际机器上不存在, 存在的是es-itcast-cluster解决cluster-name配置必须指向原创 2021-09-17 17:35:35 · 157 阅读 · 0 评论 -
jar包中文乱码
文章目录场景解决分析场景macos系统jar包运行无异常,但是同事win10会发现jackson中文乱码解决java -Dfile.encoding=utf-8 -jar pushtrade-1.4.6-all.jar分析java虚拟机启动的时候 使用的字符集不是utf8原创 2021-08-26 10:40:40 · 142 阅读 · 0 评论 -
spring boot使用jooq配置
文章目录场景配置场景jooq相对mybaits的优势配置<?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" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https:原创 2021-04-20 17:09:22 · 417 阅读 · 0 评论 -
确定有限自动机DFA
文章目录场景举例cp官解场景确定有限状态机定义: 一个状态对应一个输入只会有一个转移规则,而每个状态都包含所有输入的转移规则。包含的要素一个有限的输入集合一个有限的状态集合一个状态迁移函数一个开始的状态一个接受状态的集合,用来查看最后的状态是否符合预期。这个可以没有举例leetcode 将字符串转整数。这个问题是个典型的dfa的用法请你来实现一个 atoi 函数,使其能将字符串转换成整数。首先,该函数会根据需要丢弃无用的开头空格字符,直到寻找到第一个非空原创 2020-12-29 18:07:31 · 488 阅读 · 0 评论 -
为什么弃用了Thread.suspend Thread.resume方法
文章目录场景分析死锁例子场景学习分析 * @deprecated This method has been deprecated, as it is * inherently deadlock-prone. If the target thread holds a lock on the * monitor protecting a critical system resource when it is suspended, no * th原创 2020-12-28 18:52:30 · 411 阅读 · 0 评论 -
notify和notifyall的区别
文章目录场景分析例子经典java线程状态流转图场景调用wait的线程的唤醒,一般通过notify和notifyAll,但是两者之间有什么区别呢?分析线程调用synchronized方法或者synchronized代码块需要获取对象锁,如果没有获取则进入锁池线程调用wait方法进入等待池,此时可以通过锁对象调用 notify,notifyAll方法(第三方线程获取锁对象的synchronized的方法中释放),释放等待池线程进入锁池。notify只释放一个等待池中的线程,优先级的高的机会大些原创 2020-12-27 20:55:48 · 2623 阅读 · 1 评论 -
Thread.stop()为何废弃
场景Thread.stop()为何废弃被放弃的原因解释stop方法抛除ThreadDeath,这个异常会在栈传播,导致所有监视器被释放,这导致不可以预料的后果 * @deprecated This method is inherently unsafe. Stopping a thread with * Thread.stop causes it to unlock all of the monitors that it * has lo原创 2020-12-23 19:14:00 · 296 阅读 · 0 评论 -
idea 没有识别出pom文件
文章目录场景解决场景新建了一个module,但是没有被正确的识别为maven项目解决pom.xml内 右键选择 “add as maven project”原创 2020-12-03 11:44:00 · 1869 阅读 · 0 评论 -
spring-cloud eureka server无法进入管理页面
文章目录场景pom.xml配置application.properties解决场景spring-cloud选用了erueka做注册中心,启动项目后无法进入erueka的管理界面具体的做法创建spring-boot的module引入spring-cloud的依赖spring-cloud-starter-netflix-eureka-server引入管理spring-cloud的以来 spring-cloud-dependenciespom.xml配置 <propert原创 2020-11-28 11:00:06 · 987 阅读 · 0 评论 -
zookeeper使用方
文章目录场景文章场景在研究duboo,看到了一篇比较好的介绍zookeer的文章记录下文章zookeer部署介绍转载 2020-11-20 10:28:24 · 136 阅读 · 0 评论 -
war包步骤
文章目录场景重点步骤场景制作war包重点步骤设置配置文件声明包类型<packaging>war</packaging>声明包名字<finalName>firstSpringBootProjectWar</finalName>实现SpringBootServletInitializerpublic class FirstSpringBootApplication extends SpringBootServletIn原创 2020-11-12 18:35:45 · 164 阅读 · 0 评论 -
部署war Failed to configure a DataSource: ‘url‘ attribute is not specified and no embedded datasource
文章目录场景原因解决场景idea开发正常,部署war报错Failed to configure a DataSource: 'url' attribute is not specified and no embedded datasource原因包中缺少数据库配置解决将配置文件打到包中去 <resource> <directory>src/main/resources</directory> <includes>原创 2020-11-12 18:20:59 · 193 阅读 · 0 评论