- 浏览: 84009 次
最新评论
-
youjianbo_han_87:
分析的太简单,应该贴出分析过程
com.google.common.cache.CacheLoader原因分析
文章列表
在使用idea进行maven项目开发时,有时候修改了pom.xml文件并保存后idea就会自动在编辑区的右下角提示
“Maven projects need to be imported”信息,经常出现误点后使整个idea软件进入漫长的jar下载和工程重新编译期,如果机器配置不高的话往往出现电脑卡顿并死机,所以有时候需要把这个自动功能给取消掉,当我们真正需要使用的时候再通过手工reimport来进行。
自动设置
在idea中创建maven工程后会有pom.xml文件,但在每次修改完pom文件并保存的时候,经常会在idea的右下角提示“Maven projects need to ...
在linux环境下开发java程序的时候,有时候需要了解安装的jdk版面。如果之前linux系统中的jdk版本不是自己安装的话,如何能查询到系统中安装的jdk版本呢,下面介绍一下步骤:
1.查询jdk安装路径
$ps -ef|grep java
60592 1489 225893 0 22:21 pts/3 00:00:00 grep java
agent 87824 1 0 Jan23 ? 00:46:04 /opt/xxxx/java/bin/java -cp /home/xxxx/plugins/sunfire-agent ...
Out Of Memory(OOM),即内存耗尽,当系统中内存耗尽时,如果不做处理,将处于崩溃的边缘,因为无内核资源可用,而系统运行时刻都可能需要申请内存。这时,内核需要采取一定的措施来防止系统崩溃,这就是我们熟知的OOM流程, ...
mysql中的锁概念
mysql已经成为大家日常数据存储的最常用平台,但随着业务量和访问量的上涨,会出现并发访问等场景,如果处理不好并发问题的话会带来严重困扰。下面介绍一下如何通过mysql的悲观锁来解决因并发访问出现的 ...
业务开发过程中需要对java.util.Date的时间进行设置,使用了void java.util.Date.setTime(long time)方法,但在测试过程中却发现millisecond超过某一定长度后出现了“逆流”,时间出现了回退现象。
现象描述
(1)我们先看一下正常情况下的例子,将当天时间增加10天
public static void main(String[] args) {
Date now = new Date();
System.out.println("now time : ...
在Java项目开发时一般会使用maven作为项目jar包依赖管理工具,但随着工程依赖的jar包越来越多,“jar包冲突”这个潜在隐患随时可能爆发出来。大部分情况下,我们都会见到“java.lang.NoSuchMethodError”异常信息,这种情况一般都是由于包冲突引起的,如果熟悉了的话处理起来也是有法可循的,下面本文介绍一下常用方法和步骤。
产生原因
首先新说明一下为什么会出现“包冲突”:只会发生在package和路径一致的情况下,出现了一个相同的一个java类,但这个两个或多个java类隶属不是同的jar包中,导致应用在启动或运行时加载到了“错误”类,抛出异常堆栈信息。
...
问题描述
在web应用开发过程中发现部署在服务器中的应用日志突然不见了,服务器中只有tomcat或jboss的重启启动日志在打印,但应用本身设置的日志文件没有打印出来。
问题分析
该应用分支是刚从主干check下来的,而且主干 ...
Spring中常用Quarts的Cron表达式来描述和表达时间,本文把时间表达式做下介绍。
Cron表达式是一个字符串,字符串以5或6个空格隔开,分开工6或7个域,每一个域代表一个含义,Cron有如下两种语法 格式: Seconds Minutes Hours DayofMonth Month DayofWeek Year 或 Seconds Minutes Hours DayofMonth Month DayofWeek 每一个域可出现的字符如下:
代码Seconds:可出现,- * / 四个字符,有效范围为0-59的整数 Minutes:可出现,- * ...
问题描述
今天在进行Java集合类转换为数组对象的时候报如下错误:
java.lang.ClassCastException: [Ljava.lang.Object; cannot be cast to [Ljava.lang.Long;
自己代码如下:
import java.util.HashMap;
import java.util.Map;
public class demo {
public static void main(String[] args) {
Map<String, String> ...
1. 问题描述
今天在代码中想对Java switch case 和枚举类型Enum对象进行联合使用,但发现有Eclipse中异常提示信息:case expressions must be constant expressions,导致编译始终过不去。
枚举类型定义如下:
public enum TradeS ...
1. 问题描述
今天在写Java switch case语句的时候,有一句代码引起Eclipse黄色警告:The label NO_TRADE is never explicitly referenced。
原代码如下:
switch (tradeStatus) {
case CREATE:
NO_TRADE:
result.setCommonStatus(CommonStatus.UNPAY);
result.setActionButt ...
1. 问题描述
在启动Junit跑单测加载资源配置文件的时候遇到以下异常信息:
Caused by: java.lang.IllegalArgumentException: Could not resolve placeholder 'activity_template_id' in string value "${activity_template_id}"
at org.springframework.util.PropertyPlaceholderHelper.parseStringValue(PropertyPlaceholderHelper.jav ...
JDK里的Comparator方法为用户提供了自定义排序规则的接口,而我们在实际使用是一般也只是用了一个排序维度,本文介绍下多级或多个维度的排序需求下的接口实现。
我们假设一个雇员对象,包含级别、工资和入职年份(为了简单,这些属性写成 public),代码如下:
public Class Employee {
public int level; //级别
public int salary; //工资
public int years; //入职年数
}
现在我需要做一个这样的雇员列表,首先 ...
问题描述
今天在使用guava cache的时候,报了如下错误:
com.google.common.cache.CacheLoader$InvalidCacheLoadException: CacheLoader returned null for key 50816009.
at com.google.common.cache.LocalCache$Segment.getAndRecordStats(LocalCache.java:2346)
at com.google.common.cache.LocalCache$S ...
1. 概述
观察者模式是一种常见的设计模式,又叫发布-订阅(Publish/Subscribe)模式。本文主要介绍下观察者模式的基本概念,然后给出Java实现此设计模式的一个demo供大家参考。
2. 什么是观察者模式
将一个系统分割成一系列相互协作的类有一个很不好的副作用,那就是需要维护相关对象之间的一致性,而我们不希望为了维持一致性而使得各类紧密耦合,这样会给维护、扩展和重用都带来不便。
观察者模式定义了一种一对多的依赖关系,让多个观察者对象同时监听某一个主题对象。这个主题对象在状态发生变化时,会通知所有观察者对象,使它们能够自动更新自 ...