java
文章平均质量分 50
森林茂密溪水如流
写点感兴趣的东西,工作中碰到的问题记录一下
展开
-
Java POSITIVE_INFINITY NEGATIVE_INFINITY
Java中double、float的无穷计算进行的单元测试代码java浮点数运算中有两个特殊的情况:NAN、INFINITY。1、INFINITY:在浮点数运算时,有时我们会遇到除数为0的情况,那java是如何解决的呢?我们知道,在整型运算中,除数是不能为0的,否则直接运行异常。但是在浮点数运算中,引入了无限这个概念,我们来看一下Double和Float中的定义。Double:public static final double POSITIVE_INFINITY = 1.转载 2022-01-24 20:41:49 · 682 阅读 · 0 评论 -
Java代理运用-根据方法名输出结果
利用Java代理实现方法调用时的方法拦截原创 2021-12-11 11:30:00 · 513 阅读 · 2 评论 -
打印层次节点
利用数组+节点实现层次数据的打印原创 2021-12-11 11:22:01 · 268 阅读 · 0 评论 -
JavaNIO的系列文章介绍
复制文章链接:Java NIO 系列教程 | 并发编程网 – ifeve.com让天下没有难学的技术https://ifeve.com/java-nio-all/翻译的文章很好,值得推荐原创 2021-11-28 22:19:30 · 93 阅读 · 0 评论 -
Leaf-segment 双buffer数据库方案-理论知识补充
实现原理参考:Leaf——美团点评分布式ID生成系统 - 美团技术团队Leaf方案实现Leaf这个名字是来自德国哲学家、数学家莱布尼茨的一句话: >There are no two identical leaves in the world > “世界上没有两片相同的树叶”综合对比上述几种方案,每种方案都不完全符合我们的要求。所以Leaf分别在上述第二种和第三种方案上做了相应的优化,实现了Leaf-segment和Leaf-snowflake方案。Leaf-segment数据库.转载 2021-11-12 10:09:35 · 422 阅读 · 0 评论 -
MQ实现事务消息
参考文章:吃透此文,MQ会被你玩的出神入化文章很有实际项目的参考意义,摘取部分文章如何确保本地事务执行成功的情况下,消息一定会投递成功;或者本地事务执行失败的情况下,消息取消投递,这也就是常说的事务消息。2.1、电商中有这样的一个场景 下单成功之后送积分的操作,我们使用 mq 来实现 下单成功之后,投递一条消息到 mq,积分系统消费消息,给用户增加积分 我们主要讨论一下,下单及投递消息到 mq 的操作,如何实现?每种方式优缺点?2.2、方式一:业务事务中投递消息过转载 2021-10-14 17:40:09 · 1070 阅读 · 0 评论 -
RabbitMq消息消费通用模板
通过配置通用消费代码模板、扫描指定的方法注解 、反射,与具体的service进行剥离减少代码变更的次数,提供简单的配置,即可完成消息的消费具体的注解定义package com.xes.customer.annotation;import com.xes.enums.BusinessTypeEnum;import java.lang.annotation.*;/** * @author lzl * @date: 2021-07-29 14:53 */@Target(Elemen.原创 2021-08-01 14:06:59 · 484 阅读 · 0 评论 -
RabbitMq死信队列配置问题记录
1、配置队列,因设置参数value类型错误导致异常:org.springframework.amqp.AmqpIOException: java.io.IOException: java.lang.IllegalArgumentException: invalid value in table完整的异常信息:2021-04-15 17:58:34.528 INFO 22584 - o.s.a.r.c.CachingConnectionFactory : Attempting to c原创 2021-04-15 18:44:05 · 1441 阅读 · 0 评论 -
判断date之间相差的天数
import lombok.extern.slf4j.Slf4j;import java.text.SimpleDateFormat;import java.util.Calendar;import java.util.Date;@Slf4jpublic class DateUtils { public static final String YYYY_MM_DD = "yyyy-MM-dd"; public static final String YYYY_MM_DD_H.原创 2021-03-02 11:17:57 · 478 阅读 · 1 评论 -
Filter、Interceptor中处理不符合条件的请求
1、处理的返回结果的几种方式下列代码中判断的是业务逻辑,关键点是写入错误信息,停止请求流转。1)校验不通过直接抛异常的方式处理请求 错误信息(堆栈信息较深)和正常的业务错误信息混合在一处,线上排查问题不方便;也可以单独指定错误信息输出到某个指定的文件中,但是针对文件的操作(多大容量、是否需要定时备份)比较复杂,需求其他的技术手段保证可用。2)在response中写入错误信息,终止当前的流程 对不符合的请求,直接log.error()的方式进行信息记录;在respons...原创 2020-11-13 16:06:02 · 429 阅读 · 0 评论 -
关键接口开启双重校验
注意:需要前端配置 针对关键接口处理返回的token信息。1、整体思路 针对某些关键性的页面数据操作在调用展示数据页面时,后台针对此接口重写返回的token信息,前端拿到token信息后,进行本地保存,在当前页面进保存操作时,进行校验(包含时间校验)。当在页面停留过久时提示刷新页面,这样可以防止直接通过接口调用写入脏数据。2、实现步骤 创建拦截器、注册拦截器,创建注解、在拦截器的preHandle方法、postHandle方法中处理针对不同的注解进行处理。...原创 2020-11-13 16:03:50 · 236 阅读 · 0 评论 -
SpringBoot 项目启动 指定范围内的端口
package com.lzl.cloud.eureka.port;import lombok.extern.slf4j.Slf4j;import org.springframework.util.StringUtils;import java.net.ServerSocket;import java.util.Properties;import java.util.Random;/** * 判断启动时是否指定端口 * 没有指定端口 随机获取端口 进行服务启动 * @author .原创 2020-08-03 15:03:25 · 1059 阅读 · 0 评论 -
使用java 注解校验参数 、全局异常获取定义的message、对象嵌套校验
GET 请求的参数对象定义:@Data@ApiModelpublic class Test {@NotEmpty(message = "手机号码不为空")@Size(min = 11,max = 11,message = "手机长度不合法")@ApiModelProperty(value = "手机号码")private String phone;@NotEmpty(message = "code参数异常")@ApiModelProperty(value = "co原创 2020-06-16 18:23:52 · 2987 阅读 · 0 评论 -
java 10进制和5进制互转 生成的唯一邀请码
import org.slf4j.Logger;import org.slf4j.LoggerFactory;import java.time.LocalDateTime;import java.time.Period;import java.time.ZoneId;import java.util.Date;import java.util.Objects;import java.util.Random;import static java.time.ZoneId.SHORT_IDS.原创 2018-06-11 15:22:36 · 1693 阅读 · 0 评论 -
java 判断 两个日期是否在同一个星期内 (jdk8)
import org.slf4j.Logger;import org.slf4j.LoggerFactory;import java.time.Instant;import java.time.LocalDateTime;import java.time.Period;import java.time.ZoneId;import java.time.format.DateTimeFo...原创 2018-06-06 17:34:20 · 6206 阅读 · 3 评论 -
Spring Controller 全局捕获异常
package controllerexception;import org.springframework.web.bind.annotation.ControllerAdvice; import org.springframework.web.bind.annotation.ExceptionHandler;@ControllerAdvice public class Contro...原创 2018-06-06 21:45:50 · 1508 阅读 · 2 评论 -
localDateTime和timestamp互转
import java.time.LocalDate;import java.time.LocalDateTime;import java.time.ZoneId;import java.time.ZoneOffset;public class MainThread { public static void main(String[] args) { timestamp(); ...原创 2018-06-26 15:20:31 · 2110 阅读 · 0 评论 -
检查某年是否是闰年
import java.time.LocalDate;import java.time.LocalDateTime;/** * 检查某一年是否为闰年 * @param localDateTime * @return */ private static boolean isLeapYear(LocalDateTime localDateTime...原创 2018-06-26 15:26:22 · 685 阅读 · 0 评论 -
取得某天的开始时间和结束时间、取得某月的开始时间和结束时间
import java.time.LocalDate;import java.time.LocalDateTime;private static void testDay(LocalDateTime localDateTime){ minOfDay(localDateTime); maxOfDay(localDateTime); minDayOfMonth...原创 2018-06-26 15:28:20 · 1850 阅读 · 2 评论 -
Excel表格处理时间格式
File sourceFile = new File(sourceUrl);Sheet sourceSheet = WorkbookFactory.create(sourceFile).getSheetAt(0);Row row= sourceSheet.getRow(1);Cell createCell = row.getCell(2);Cell lastCell = row.g...原创 2018-11-21 19:02:25 · 936 阅读 · 0 评论 -
java简单实现二叉树插入和遍历
package com.my.tree;import java.util.ArrayList;import java.util.List;public class Tree { private Tree left; private String data; private Tree right;原创 2016-07-12 22:55:27 · 342 阅读 · 0 评论