欢迎您光临本小站。希望您在这里可以找到自己想要的信息。。。

 分类:java

Java本地缓存技术选型(Guava Cache、Caffeine、Encache)

Java本地缓存技术选型(Guava Cache、Caffeine、Encache)
前言 对一个java后台开发者而言,提到缓存,第一反应就是redis和memcache。利用这类缓存足以解决大多数的性能问题了,并且java针对这两者也都有非常成熟的api可供使用。但是我们也要知道,这两种都属于remote cache(分布式缓存),应用的进程和缓存的进...

water 4年前 (2020-10-14) 2763℃ 0评论 0喜欢

NullPointerException 没有打印异常栈问题追踪

NullPointerException 没有打印异常栈问题追踪
今天去服务器后台看日志,发现有很多NullPointerException异常。我下意识的去找异常栈信息,想看下到底是哪行代码导致了空指针。但是发现日志中只打印出了如下日志: Copynull java.lang.NullPointerException: null ...

water 4年前 (2020-10-13) 2266℃ 0评论 1喜欢

IDEA1安装protobuf 插件

IDEA1安装protobuf 插件
采用IDEA的插件执行PB的文件的JAVA编译,这样的话,就不用执行命令了,同时可以编译多个PB文件。 第一步:安装插件 安装 protocol buffer editor 第二步:配置pom文件注意版本,保证jar包的引入 <depend...

water 4年前 (2020-07-15) 2270℃ 0评论 1喜欢

java.util包源码思维导图

java.util包源码思维导图
图片看不清,请点击图片查看原图,支持图片放大 包含 collection 框架、遗留的 collection 类、事件模型、日期和时间设施、国际化和各种实用工具类(字符串标记生成器、随机数生成器和位数组) java.util包源码思维导图 转载请注明:学时网 &...

water 4年前 (2020-06-11) 2199℃ 0评论 0喜欢

深入理解jvm–Java中init和clinit区别完全解析

深入理解jvm–Java中init和clinit区别完全解析
init和clinit区别 ①init和clinit方法执行时机不同 init是对象构造器方法,也就是说在程序执行 new 一个对象调用该对象类的 constructor 方法时才会执行init方法,而clinit是类构造器方法,也就是在jvm进行类加载—–验证—-...

water 4年前 (2020-04-22) 1483℃ 0评论 0喜欢

Java学习必备书籍推荐终极版!

Java学习必备书籍推荐终极版!
很早就想把JavaGuide的书单更新一下了,昨晚加今天早上花了几个时间对之前的书单进行了分类和补充完善。虽是终极版,但一定还有很多不错的 Java 书籍我没有添加进去,会继续完善下去。希望这篇文章对你有帮助,不要再无书可看。 欢迎在留言区补充你觉得不错的 Java 方向...

water 4年前 (2020-04-21) 1424℃ 0评论 0喜欢

JDK8对并发的新支持

JDK8对并发的新支持
Java 8在Lambda表达式、接口默认方式、新的日期API等方面引入的新特性广受关注,同时在并发编程方面也做出了大量改进。以往的几个Java版本都对java.util.concurrent做了不同程度的增强,比如Java 7的Fork/Join框架,而Java 8则进一步在...

water 4年前 (2020-04-21) 1596℃ 0评论 0喜欢

JAVA中return与finally的先后关系

JAVA中return与finally的先后关系
以前一直觉得有这个问题存在但也没有深究,今天来彻底探讨一下二者之间的关系 预备知识 首先是关于return返回的底层知识   java方法是在栈幀中执行,栈幀是线程私有栈的单位,执行方法的线程会为每一个方法分配一小块栈空间来作为该方法执行时的内存空间,栈幀...

water 4年前 (2020-04-20) 1297℃ 0评论 0喜欢

java Queue中 remove/poll, add/offer, element/peek区别

java Queue中 remove/poll, add/offer, element/peek区别
这里简单对其重复的方法做点简单的区分。 offer,add区别: 一些队列有大小限制,因此如果想在一个满的队列中加入一个新项,多出的项就会被拒绝。 这时新的 offer 方法就可以起作用了。它不是对调用 add() 方法抛出一个 unchecked 异常,而只...

water 4年前 (2020-04-17) 1445℃ 0评论 0喜欢

JDK常用包,及其常用类

JDK常用包,及其常用类
 目的 集中jdk常用包,以方便记住jdk的常用功能及常用类,开发的时候,找jdk的API也会更加方便, 也是对jdk包的说明 常用包 第一层 java、javax、org、sun包都是jdk提供的类包,且都是在rt.jar中。rt.ja...

water 4年前 (2020-04-15) 2427℃ 0评论 2喜欢

线程有序化神器CompletionService

线程有序化神器CompletionService
话说有一天,产品经理突然找到正在摸鱼的你。 产品:『我们要加一个聚合搜索功能,当用户在我们网站查询一件商品时,我们分别从 A、B、C 三个网站上查询这个信息,然后再把得到的结果返回给用户』 你:『哦,就是写个爬虫,从 3 个网站上抓取数据是吧?』 产品:『呸,爬虫是犯法的...

water 4年前 (2020-04-10) 1669℃ 0评论 0喜欢

Java安全:SecurityManager与AccessController

Java安全:SecurityManager与AccessController
前言 什么是安全? 程序不能恶意破坏用户计算机的环境,比如特洛伊木马等可自我进行复制的恶意程序。程序不可获取主机及其所在网络的私密信息。程序的提供者和使用者的身份需要通过特殊验证。程序所涉及的数据在传输、持久化后都应是被加密的。程序的操作有相关规则限制,并且不能耗费...

water 4年前 (2020-04-10) 1563℃ 0评论 1喜欢

使用Policy文件来设置Java的安全策略

使用Policy文件来设置Java的安全策略
—- 众所周知,Java语言具有完善的安全框架,从编程语言,编译器、解释程序到Java虚拟机,都能确保Java系统不被无效的代码或敌对的编译器暗中破坏,基本上,它们保证了Java代码按预定的规则运作。但是,当我们需要逾越这些限制时,例如,读写文件,监听和读写So...

water 4年前 (2020-04-10) 1345℃ 0评论 0喜欢

高级开发必须理解的Java中SPI机制

高级开发必须理解的Java中SPI机制
本文通过探析JDK提供的,在开源项目中比较常用的Java SPI机制,希望给大家在实际开发实践、学习开源项目提供参考。 1 SPI是什么 SPI全称Service Provider Interface,是Java提供的一套用来被第三方实现或者扩展的API,它可以用来...

water 4年前 (2020-04-09) 1441℃ 0评论 0喜欢

JAVA Launcher简析

JAVA Launcher简析
JAVA Launcher简析 sun.misc.Launcher类是java的入口,在启动java应用的时候会首先创建Launcher类,创建Launcher类的时候回准备应用程序运行中需要的类加载器。 一、ClassLoader Launcher作为JAVA应用的入口...

water 4年前 (2020-04-09) 2305℃ 0评论 2喜欢