![](https://img-blog.csdnimg.cn/20201227224603122.jpg?x-oss-process=image/resize,m_fixed,h_224,w_224)
java
文章平均质量分 63
java
JavaPub-rodert
技术&自媒体,专注于面试技巧,擅长Java、Go、MySQL、区块链
展开
-
gradle 和 java 版本对应关系
https://docs.gradle.org/current/userguide/compatibility.html#compatibility原创 2024-07-12 17:33:35 · 103 阅读 · 0 评论 -
今天BOSS约了个面试,HR直接发我一道面试题
在电商、外卖、预约服务等场景中,订单超时自动取消是一个常见的业务需求。这一功能不仅提高了系统的自动化程度,还为用户提供了更好的体验。TODO如果用户在生成订单后一定时间未支付,则系统自动取消订单。接下来就用 SpringBoot 实现订单超时未支付自动取消的几种方案,并提供相应的代码示例。原创 2024-03-06 11:07:32 · 479 阅读 · 0 评论 -
我在工作一年时怎么都看不懂的编程写法。今天手把手教给你
作为一名程序员,你一定遇到或亲自写过这样的代码。有人将它形象的形容为shi山,或者被戏称为“面向保就业编程”。以下面这个代码为例,其中的问题也显而易见,当越来越多的条件判断时,代码会变得非常臃肿,难以维护。原创 2024-01-09 22:57:15 · 461 阅读 · 0 评论 -
什么是Java伪随机数,基础打牢。 #程序员 #Java #编程
@FilePath: \JavaPub-Blog\docs\posts\java\Java Random 为什么是为随机数,一分钟了解.md你一定听说过这样一个词,伪随机数,你有没有这样的疑惑,为什么不用真随机,要用的个假的?先说一个结论:Java Random英/ˈrændəm/ 随机数生成不安全,如果同时泄漏第一个和第二个随机数,那么后面的随机数序列可以被破解。Java Random类 使用 线性同余生成器算法(Linear Congruential Generator)来生成伪随机数。原创 2023-11-18 21:07:48 · 279 阅读 · 0 评论 -
java: 错误: 无效的源发行版:17 【解决】
【代码】java: 错误: 无效的源发行版:17 【解决】原创 2023-09-07 08:06:39 · 137 阅读 · 0 评论 -
java提取网站域名
java提取网站域名原创 2022-05-25 17:09:36 · 1122 阅读 · 0 评论 -
Java 计算两个时间点包含工作日天数【拿来即用】
计算两个时间工作日天数差。方法忽略法定节假日;忽略周末补充上班;stop当天算入计算天数;import java.text.ParseException;import java.text.SimpleDateFormat;import java.time.LocalDateTime;import java.time.ZoneId;import java.util.Calendar;import java.util.Date;import java.util.GregorianCale原创 2022-03-17 11:10:58 · 1406 阅读 · 0 评论 -
ThreadLocal 场景题
面试中谈起并发,ThreadLocal 必定要聊。ThreadLocal 的线程隔离非常好用。几个经典且实用的场景,防止在面试官前一时语塞文章目录1. 用过ThreadLocal吗?2. 它有什么用?3. 什么场景下使用的?场景一、保存用户信息场景:1,定义用户实体:2,定义工具类操作ThreadLocal(存放,获取,删除用户信息)3,拦截器:1,访问接口时将用户信息放入ThreadLocal,2,访问结束时候删除ThreadLocal中信息(线程放入线程池并不一定会销毁)4,配置拦截器。5,定义原创 2021-09-15 16:40:24 · 258 阅读 · 0 评论 -
Java 怎样从 excel 中读取文件、写入文件
https://blog.csdn.net/galen2016/article/details/84840793原创 2021-09-07 20:06:57 · 852 阅读 · 0 评论 -
java.lang.NoClassDefFoundError:无法初始化类XXX
java.lang.NoClassDefFoundError:无法初始化类XXX文章目录1. 场景2. 问题3. 原因4. 解决思路1. 场景在本地,debug模式启动调试,代码大概是如下:public class PropHolder { public static Properties prop; static { //code for loading properties from file }}// Referencing the class somewher.原创 2021-04-07 11:41:17 · 3764 阅读 · 0 评论 -
volatile关键字的作用
大约阅读3分钟引言:以前只是看过介绍 volatile 的文章,对其的理解也只是停留在理论的层面上,由于最近在项目当中用到了关于并发方面的技术,所以下定决心深入研究一下java并发方面的知识。网上关于volatile的文章非常多,但是并没有讲解非常详细的文章。(哪位要是有好的资料麻烦共享一份给我!)多数的都是一些理论讲解,没有实际的例子代码,就算有代码的也测试不出效果,总之理论总是与代码不匹配。后来在我不懈的努力之下总算研究出一些成果,在此分享给大家!如果大家发现有错误的地方欢迎大家指正,谢谢!在Ja原创 2021-04-06 22:34:06 · 283 阅读 · 0 评论 -
【JVM】survivor区的解释
那么,在JVM的新生代内存中,为什么除了Eden区,还要设置两个Survivor区?1 为什么要有Survivor区先不去想为什么有两个Survivor区,第一个问题是,设置Survivor区的意义在哪里?如果没有Survivor,Eden区每进行一次Minor GC,存活的对象就会被送到老年代。老年代很快被填满,触发Major GC(因为Major GC一般伴随着Minor GC,也可以看做触发了Full GC)。老年代的内存空间远大于新生代,进行一次Full GC消耗的时间比Minor GC原创 2021-03-26 12:58:48 · 3114 阅读 · 2 评论 -
HotSpot JVM -- 深度好文
英文原文:The Hotspot JVM is a Ponzi Scheme [guest post] http://zeroturnaround.com/rebellabs/the-hotspot-jvm-is-a-ponzi-scheme-guest-post/ 马上到愚人节,就来说点骗子的东西吧~ 时不时的我就会听见有人抱怨说,他的 HotSpot JVM 不停的在垃圾回收,可是每次回收完后堆却还是满的。当他们发现这是因为 JVM 的内存已经不够了之后,通常会问这么个问题,为什么 J...原创 2021-03-26 12:56:26 · 240 阅读 · 0 评论 -
ThreadLocal为什么是线程安全的
JavaPub参考:https://blog.csdn.net/chengle4707/article/details/100696355如何看一个类是否是线程安全的?由JMM(Java内存模型)我们可以看出,在堆中的变量,如果同时被多个线程操作,就有可能出现线程安全问题(堆中的数据是线程共享的)。类分为有状态(有成员变量等)和无状态的, 无状态的类肯定是线程安全的, 我们都知道servlet,还有Spring中的bean都是单例的(在上下文中拿到的对象都是同一个),那它们是怎么保证线程安全的呢? 首原创 2021-03-25 17:07:22 · 448 阅读 · 0 评论 -
分布式Session共享解决方案
Session是服务器用来保存用户操作的一系列会话信息,由Web容器进行管理。单机情况下,不存在Session共享的情况,分布式情况下,如果不进行Session共享会出现请求落到不同机器要重复登录的情况,一般来说解决Session共享有以下几种方案。文章目录1、session复制2、session绑定3、利用cookie记录session4、session服务器1、session复制session复制是早期的企业级的使用比较多的一种服务器集群session管理机制。应用服务器开启web容器的sessi原创 2021-03-23 23:02:26 · 293 阅读 · 1 评论 -
thymeleaf中的判断总结
判断String字符串,添加引号 th:class="${flag=='forum.html'}?'active'"判断boolean类型,注意不能当成字符串处理,不能添加引号 th:style="${session.simpleFlag==false}?'':'color:red'"判断数字,注意不能直接使用小于号,会被当成html的元素标签,导致编译出错 th:style="${pageNo}-3>0?'':'display: none'"比较两个...原创 2021-03-17 11:34:03 · 872 阅读 · 0 评论 -
【JavaPub终极版】Java8 新特性全面介绍,强烈建议收藏
阅读大约10分钟,实用性非常高,建议收藏前言Java 8 已经公布有一段时间了,种种迹象表明 Java 8 是一个有重大改变的发行版。在 Java Code Geeks 上已经有很多介绍 Java 8 新特性的文章,例如 Playing with Java 8 – Lambdas and Concurrency、Java 8 Date Time API Tutorial:LocalDateTime和Abstract Class Versus Interface in the JDK 8 Era。本文还参原创 2021-03-12 11:50:38 · 358 阅读 · 0 评论 -
【已解决】eclipse导入项目出错 Server Tomcat v7.0 Server at localhost failed to start
文章目录问题解决问题xml报错Multiple annotations found at this line: - cvc-complex-type.2.4.c: The matching wildcard is strict, but no declaration can be found for element 'context:property-placeholder'. - schema_reference.4: Failed to read schema document 'http:/原创 2021-03-11 23:57:22 · 378 阅读 · 0 评论 -
【解决】eclipse项目导入出错
文章目录问题解决问题eclipse项目导入,Multiple annotations found at this line:解决核心问题,导入对应运行 tomcat 和 jdk ,d点击 OK。原创 2021-03-10 22:24:46 · 438 阅读 · 0 评论 -
公司这套架构统一处理 try...catch 这么香,求求你不要再满屏写了,再发现扣绩效!
前言全局异常捕获是非常重要的一个用法,在大多项目中都会用到,下文中有详悉代码说明,文末附涨薪秘籍软件开发springboot项目过程中,不可避免的需要处理各种异常,spring mvc 架构中各层会出现大量的 try {...} catch {...} finally {...} 代码块,不仅有大量的冗余代码,而且还影响代码的可读性。这样就需要定义个全局统一异常处理器,以便业务层再也不必处理异常。推荐理由代码复制到项目中通过简单的配置即可实现可以灵活的根据自己的业务异常进行更细粒度的扩展原创 2021-02-22 19:48:08 · 281 阅读 · 1 评论 -
CTO 说了,如果发现谁用 kill -9 关闭程序就开除
前言一个大佬的文章,编码风格也很有借鉴之处,文末附涨薪目录kill -9 是大多数人处理进程的手段,但是如果你对数据足够严谨的话,你不该这样做!文章目录前言kill -9 pid ???kill -9 pid 带来的问题优雅结束服务kill -15 pidConfigurableApplicationContext colseactuator数据备份操作kill -9 pid ???kill可将指定的信息送至程序。预设的信息为SIGTERM(15),可将指定程序终止。若仍无法终止该程序,可使用SI转载 2021-02-21 22:18:58 · 272 阅读 · 0 评论 -
Java反射--2021面试题系列教程--大白话解读--JavaPub版本
Java反射–2021面试题系列教程(附答案解析)–大白话解读–JavaPub版本前言序言再高大上的框架,也需要扎实的基础才能玩转,高频面试问题更是基础中的高频实战要点。适合阅读人群Java 学习者和爱好者,有一定工作经验的技术人,准面试官等。阅读建议本教程是系列教程,包含 Java 基础,JVM,容器,多线程,反射,异常,网络,对象拷贝,JavaWeb,设计模式,Spring-Spring MVC,Spring Boot / Spring Cloud,Mybatis / Hibernat.原创 2021-02-11 17:46:25 · 359 阅读 · 0 评论 -
Java容器--2021面试题系列教程(附答案解析)--大白话解读--JavaPub版本
Java容器–2021面试题系列教程(附答案解析)–大白话解读–JavaPub版本前言序言再高大上的框架,也需要扎实的基础才能玩转,高频面试问题更是基础中的高频实战要点。适合阅读人群Java 学习者和爱好者,有一定工作经验的技术人,准面试官等。阅读建议本教程是系列教程,包含 Java 基础,JVM,容器,多线程,反射,异常,网络,对象拷贝,JavaWeb,设计模式,Spring-Spring MVC,Spring Boot / Spring Cloud,Mybatis / Hibernat.原创 2021-02-09 23:19:13 · 267 阅读 · 0 评论 -
Java容器--2021面试题系列教程(附答案解析)--大白话解读--JavaPub版本
Java容器–2021面试题系列教程(附答案解析)–大白话解读–JavaPub版本前言序言再高大上的框架,也需要扎实的基础才能玩转,高频面试问题更是基础中的高频实战要点。适合阅读人群Java 学习者和爱好者,有一定工作经验的技术人,准面试官等。阅读建议本教程是系列教程,包含 Java 基础,JVM,容器,多线程,反射,异常,网络,对象拷贝,JavaWeb,设计模式,Spring-Spring MVC,Spring Boot / Spring Cloud,Mybatis / Hibernat.原创 2021-02-09 12:18:16 · 373 阅读 · 0 评论 -
java中如何确保一个集合不能被修改? - 源码解读详细--JavaPub版本
java如何确保一个集合不能被修改? - 源码解读1. Collections. unmodifiableCollection(Collection c) 方法 1.1 示例 1.2 源码解析 1.3 综述 2. 使用Arrays.asList创建的集合 2.1 示例 2.2 源码解读 2.3 综述 总结:看了一些java 相关的题目,其中有个说如何确保一个集合不能被修改?答案中提到了两种实现方式,Collections. unmodifiableCol.原创 2021-02-09 12:08:17 · 528 阅读 · 1 评论 -
idea与eclipse项目相互导入方式
目录idea项目往eclipse中导入 idea项目导出到桌面idea项目导入到工程中idea项目迁徙到eclipse第一种导入方式:第二种导入方式:第三种导入方式:eclipse项目往idea中导入 idea项目往eclipse中导入 idea项目导出到桌面直接去项目所在目录拷出即可,但是拷出的项目往往都特别大,这是因为拷出之前不要忘记把idea的输出目录删除,每次启动服务器运行idea项目的时候都会有一个输出目录,默认名字为target......原创 2021-02-05 12:47:12 · 10295 阅读 · 1 评论 -
jdk1.8中的ArrayList底层数组扩容的方法
这篇文章将为大家详细讲解有关jdk1.8中的ArrayList底层数组扩容的方法,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。一、结论先行ArrayList在JDK1.8与JDK1.7底层区别JDK1.7:ArrayList像饿汉式,直接创建一个初始容量为10的数组,当数组的长度不能容下所添加的内容时候,数组会扩容至原大小的1.5倍JDK1.8:ArrayList像懒汉式,一开始创建一个长度为0的数组,当添加第一个元素时再创建一个始容量为10的数组,当数组原创 2021-02-05 11:35:09 · 702 阅读 · 0 评论 -
如何决定使用 HashMap 还是 TreeMap?
文章目录问介绍结论拓展1、HashMap 和 TreeMap 的实现2、HashMap 和 TreeMap 都是非线程安全3、TreeMap中默认是按照升序进行排序的,如何让他降序问:如何决定使用 HashMap 还是 TreeMap?介绍TreeMap<K,V>的Key值是要求实现java.lang.Comparable,所以迭代的时候TreeMap默认是按照Key值升序排序的;TreeMap的实现是基于红黑树结构。适用于按自然顺序或自定义顺序遍历键(key)。HashMap<原创 2021-01-31 18:30:26 · 397 阅读 · 0 评论 -
【已解决】IDEA 启动程序 “Address already in use: NET_Bind
文章目录问题场景解决问题Error running ‘tomcat8’: Unable to open debugger port (127.0.0.1:53174): java.net.BindException "Address already in use: NET_Bind场景调试模式下启动IDEA,解决很明显是端口占用问题,问题的关键在于调试器端口。我遇到了同样的问题,我杀死了监听端口 8081(我的http端口),1099(JMX端口),tomcat shutdown 端口,每原创 2021-01-28 11:35:04 · 6428 阅读 · 0 评论 -
Java基础--2021面试题系列教程--大白话解读--JavaPub版本
前言序言再高大上的框架,也需要扎实的基础才能玩转,高频面试问题更是基础中的高频实战要点。适合阅读人群Java 学习者和爱好者,有一定工作经验的技术人,准面试官等。阅读建议本教程是系列教程,包含 Java 基础,JVM,容器,多线程,反射,异常,网络,对象拷贝,JavaWeb,设计模式,Spring-Spring MVC,Spring Boot / Spring Cloud,Mybatis / Hibernate,Kafka,RocketMQ,Zookeeper,MySQL,Redis,Elast原创 2021-01-27 18:59:14 · 502 阅读 · 10 评论 -
比较java枚举成员使用equal还是==
阅读大约4分钟文章目录问题答案详细探讨能在枚举中使用 == 进行判断?什么时候 == 和 equals 不一样?什么时候使用 == ?问题我知道Java枚举会被编译成一个包含私有构造参数和一堆静态方法的类,当去比较两个枚举的时候,总是使用equals()方法,例如:public useEnums(SomeEnum a){ if(a.equals(SomeEnum.SOME_ENUM_VALUE)) { ... } ...}除此之外,我也可以使用原创 2021-01-16 16:48:33 · 333 阅读 · 0 评论 -
分布式唯一ID解决方案-雪花算法
阅读大概需要3分钟附源码文章目录前言ID生成器数据库自增分布式ID生成器方案一:UUID方案二:snowflake(雪花算法)算法介绍源码前言单体架构的服务的日子已经一去不复返了。当前系统业务和数据存储的复杂度都在提升,分布式系统是目前使用非常普遍的解决方案。全局唯一 ID 几乎是所有设计系统时都会遇到的,全局唯一 ID 在存储和检索中有至关重要的作用。ID生成器在应用程序中,经常需要全局唯一的ID作为数据库主键。如何生成全局唯一ID?首先,需要确定全局唯一ID是整型还是字符串?如果是字符原创 2021-01-12 22:37:20 · 806 阅读 · 0 评论 -
jstat使用实用教程
大概阅读5分钟,本教程非常实用,清晰案例展示,建议收藏查询要监控的 java 进程号(pid)参考:https://javapub.blog.csdn.net/article/details/112383958文章目录jstat简介Jstat命令格式实例命令:返回值:截图:参数详细解析jstat简介Jstat位于java的bin目录下,主要利用JVM内建的指令对Java应用程序的资源和性能进行实时的命令行的监控,包括了对Heap size和垃圾回收状况的监控。Jstat可以用来监视VM原创 2021-01-08 21:38:14 · 577 阅读 · 0 评论 -
windows下查询程序进程号
wmic process where caption=“java.exe” get processid,caption,commandline /valuetasklist /fi “imagename eq java.exe”tasklist | findstr “java”查看2001端口 导出到c盘netstat -aont | findstr “2001” > c:\2001.log原创 2021-01-08 21:08:00 · 1060 阅读 · 1 评论 -
元素 ‘beans‘ 必须不含字符 [子级], 因为该类型的内容类型为“仅元素”....解决办法
这个问题是个很怪的问题,你一定从别处辅助来的配置问题元素 ‘beans’ 必须不含字符 [子级], 因为该类型的内容类型为“仅元素”…解决办法问题原因就是有一些特殊字符、特殊空格,不容易被发现解决重新手动添加...原创 2021-01-04 18:07:30 · 687 阅读 · 0 评论 -
Spring常用注解【维护持续迭代跟新】
重要性和排序无关文章目录@ModelAttribute@SerializedName@Expose@ModelAttribute这个很重要建议参考:https://www.baeldung.com/spring-mvc-and-the-modelattribute-annotation@SerializedName主要作用:属性重命名,可以将json中的属性名转为我们自己自定义的属性名@SerializedName 注解提供了两个属性,上面用到了其中一个’value’,别外还有一个属 a原创 2020-12-25 11:13:33 · 456 阅读 · 0 评论 -
java-时间获取-LocalDateTime
在Java中,Date类和Calendar 在多线程中使用会有线程不安全问题这里给一个 LocalDateTime 使用案例jdk8: public static void main(String[] args) { System.out.println((new Date()).getTime() / 1000); System.out.println(LocalDate.now()); System.out.println(LocalD原创 2020-12-13 20:33:34 · 2279 阅读 · 0 评论 -
influxDb 异常:{“error“:“retention policy not found: default“}
influxDb使用人数较少,这里是一篇使用笔记记录。参考地址:https://blog.csdn.net/x541211190/article/details/82948201原创 2019-12-03 15:14:26 · 985 阅读 · 0 评论 -
网络地址正则表达式
网络地址正则表达式:public final static String URLPATTERN = "^([hH][tT]{2}[pP]://|[hH][tT]{2}[pP][sS]://)(([A-Za-z0-9-~]+).)+([A-Za-z0-9-~\\/])+$";原创 2020-12-13 13:34:04 · 882 阅读 · 0 评论 -
IntelliJ IDEA导入Eclipse项目(超级详细)
转载文章,真实好用,建议收藏。20201128.背景一直听说IntelliJ IDEA很厉害,但工作中一直用的是Eclipse。这两天放假,准备来试用一下Idea。新建Eclipse项目这个步骤是为后面的工作,做好素材准备。这一步比较简单,过程:略。。。NOTE:截图的时候,还没有web.xml文件。需要在WEB-INF目录新建web.xml文件。Idea导入项目1. IDEA导入项目IDEA之前如果没有的打开过的话,刚需要先临时建一个工作空间,以便IDEA打开。.原创 2020-11-28 14:07:08 · 5153 阅读 · 2 评论