- 博客(24)
- 资源 (20)
- 收藏
- 关注
原创 IDEA中Enable Auto-Import如何取消
在使用idea进行maven项目开发时,有时候修改了pom.xml文件并保存后idea就会自动在编辑区的右下角提示“Maven projects need to be imported”信息,经常出现误点后使整个idea软件进入漫长的jar下载和工程重新编译期,如果机器配置不高的话往往出现电脑卡顿并死机,所以有时候需要把这个自动功能给取消掉,当我们真正需要使用的时候再通过手工reimpor...
2018-05-27 17:34:33 8161 2
原创 linux服务查询jdk版本
在linux环境下开发java程序的时候,有时候需要了解安装的jdk版面。如果之前linux系统中的jdk版本不是自己安装的话,如何能查询到系统中安装的jdk版本呢,下面介绍一下步骤:1.查询jdk安装路径$ps -ef|grep java60592 1489 225893 0 22:21 pts/3 00:00:00 grep javaagent ...
2018-05-27 17:27:35 1785
原创 linux内核OOM源码分析
Out Of Memory(OOM),即内存耗尽,当系统中内存耗尽时,如果不做处理,将处于崩溃的边缘,因为无内核资源可用,而系统运行时刻都可能需要申请内存。这时,内核需要采取一定的措施来防止系统崩溃,这就是我们熟知的OOM流程,其实就是要回收一些内存,而走到OOM流程,已经基本说明其它的回收内存的手段都已经尝试过了(比如回收cache),这里通常只能通过kill进程来回收内存了,而选择被kill...
2018-05-12 21:17:56 852
原创 mysql悲观锁原理详解
mysql中的锁概念mysql已经成为大家日常数据存储的最常用平台,但随着业务量和访问量的上涨,会出现并发访问等场景,如果处理不好并发问题的话会带来严重困扰。下面介绍一下如何通过mysql的悲观锁来解决因并发访问出现的种种数据不一致问题。 为什么需要锁 当我们并发访问或更新数据库时,有可能会出现脏读(Dirty Read)、不可重复读(Unrepeatable Rea...
2018-03-02 17:45:02 1041 1
原创 java Date.setTime时间设置逆流
业务开发过程中需要对java.util.Date的时间进行设置,使用了void java.util.Date.setTime(long time)方法,但在测试过程中却发现millisecond超过某一定长度后出现了“逆流”,时间出现了回退现象。 现象描述 (1)我们先看一下正常情况下的例子,将当天时间增加10天 public static voi...
2017-05-05 16:42:23 2659
原创 maven包冲突(java.lang.NoSuchMethodError)解决
在Java项目开发时一般会使用maven作为项目jar包依赖管理工具,但随着工程依赖的jar包越来越多,“jar包冲突”这个潜在隐患随时可能爆发出来。大部分情况下,我们都会见到“java.lang.NoSuchMethodError”异常信息,这种情况一般都是由于包冲突引起的,如果熟悉了的话处理起来也是有法可循的,下面本文介绍一下常用方法和步骤。 产生原因首先新说明一下为什么会出现...
2017-02-09 11:04:54 6758
原创 logback日志打印不出来包冲突解决方案
问题描述在web应用开发过程中发现部署在服务器中的应用日志突然不见了,服务器中只有tomcat或jboss的重启启动日志在打印,但应用本身设置的日志文件没有打印出来。问题分析该应用分支是刚从主干check下来的,而且主干分支在服务器上部署后是正常的,所有日志文件及文件内的日志信息都能正常打印和显示。根据之前经验判断由于应用部署是成功的,并且提交的新代码中只是在maven工程的p...
2017-02-09 11:01:22 3461
原创 Spring时间表达式介绍
Spring中常用Quarts的Cron表达式来描述和表达时间,本文把时间表达式做下介绍。 Cron表达式是一个字符串,字符串以5或6个空格隔开,分开工6或7个域,每一个域代表一个含义,Cron有如下两种语法 格式: Seconds Minutes Hours DayofMonth Month DayofWeek Year 或 Seconds Minutes Hours Day...
2017-02-03 15:33:30 719
原创 [Ljava.lang.Object; cannot be cast to [Ljava.lang.Long
问题描述今天在进行Java集合类转换为数组对象的时候报如下错误: java.lang.ClassCastException: [Ljava.lang.Object; cannot be cast to [Ljava.lang.Long; 自己代码如下: import java.util.HashMap;import java.util.Map;pu...
2016-09-27 17:15:16 5297 1
原创 Java switch case 枚举enum报错:case expressions must be constant expressions
1. 问题描述 今天在代码中想对Java switch case 和枚举类型Enum对象进行联合使用,但发现有Eclipse中异常提示信息:case expressions must be constant expressions,导致编译始终过不去。 枚举类型定义如下: public enum TradeStatus { CLOSE...
2016-09-16 20:26:50 2675 2
原创 The label NO_TRADE is never explicitly referenced
1. 问题描述 今天在写Java switch case语句的时候,有一句代码引起Eclipse黄色警告:The label NO_TRADE is never explicitly referenced。 原代码如下: switch (tradeStatus) { case CREATE: NO_TRAD...
2016-09-16 20:24:19 489
原创 Could not resolve placeholder 'activity_template_id' 原因分析
1. 问题描述在启动Junit跑单测加载资源配置文件的时候遇到以下异常信息: Caused by: java.lang.IllegalArgumentException: Could not resolve placeholder 'activity_template_id' in string value "${activity_template_id}" at org.sp...
2016-09-16 20:16:33 350
原创 Comparator多级排序
JDK里的Comparator方法为用户提供了自定义排序规则的接口,而我们在实际使用是一般也只是用了一个排序维度,本文介绍下多级或多个维度的排序需求下的接口实现。 我们假设一个雇员对象,包含级别、工资和入职年份(为了简单,这些属性写成 public),代码如下: public Class Employee { public int leve...
2016-09-16 19:27:54 1006
原创 com.google.common.cache.CacheLoader原因分析
问题描述 今天在使用guava cache的时候,报了如下错误: com.google.common.cache.CacheLoader$InvalidCacheLoadException: CacheLoader returned null for key 50816009. at com.google.common.cache.LocalC...
2015-11-28 17:47:51 5050
原创 Java实现观察者设计模式
1. 概述 观察者模式是一种常见的设计模式,又叫发布-订阅(Publish/Subscribe)模式。本文主要介绍下观察者模式的基本概念,然后给出Java实现此设计模式的一个demo供大家参考。 2. 什么是观察者模式 将一个系统分割成一系列相互协作的类有一个很不好的副作用,那就是需要维护相关对象之间的一致性,而我们不希望为了维持一致性而使得各类紧密耦合,这...
2015-11-24 15:02:07 287
原创 spring中配置EventBus
1. 概述 guava中EventBus是一个消息处理总线,基于观察者模式设计和实现。网上有很多关于其原理介绍和用法的文字,但很多用法都是给了已经简单的示例或测试demo,并没有和工程框架相结合。 本文主要介绍下在spring框架中如何使用和配置EventBus。 2. EventBus在spring中的使用 EventBus主要分为两种,一...
2015-10-08 21:37:50 913
原创 全国城市行政区划码Json格式
最近在项目中用到了城市行政区划码,国家统计局网站上也有一份,但都是在html页面里使用很不方便。自己做了一份json格式的行政区划码数据,供各位程序员直接使用。只保留了大陆城市的行政区划码,港、澳、台地区,因为当时业务上没有用到,所以过滤掉了。 { "北京": [ [ "北京", 110100 ...
2015-08-16 00:22:14 4723
原创 Java生成字母和数字组成的随机字符串
在业务开发过程中经常遇到生成随机字符串,用于密钥、密码、口令或其他标识使用。 下面就介绍一下通过Java程序生成这些随机字符串的方法。 1. 随机生成n位由字母或数字组成的字符串 public static String getRandomCharacterAndNumber(int length) { String val = ""; ...
2015-08-10 00:27:27 1736
原创 webx URIBrokerService 总结
1. 概述Web由有许多资源组成,比如HTML文档,图片,视频, css/javascript等。每一种资源都由一种叫做资源标示符(URI)的符号来定位。URI除了出现在Web页面上,对于程序员来说,有时也会将它作为字面值常量定义在程序当中。这类静态录入的URI,在早期的系统开发过程中,的确让程序员屡试不爽。但随着系统功能的不断扩充,复杂性越来越高,静态录入URI使得整套系统变得难以扩...
2015-07-11 23:24:55 312
Java反射机制浅析
什么是Java反射机制 Java反射机制主要用到了java.lang.reflect包下面的类。 首先来看下Java官方api中是怎么描述reflect包的: Provides classes and interfaces for obtaining reflective information about classes and objects. Reflection a...
2015-01-06 22:34:00 117
原创 Java类加载机制浅析
Java中的类加载机制主要有类加载器完成。类加载器可以说是Java语言的一项创新,也是Java语言流行的重要原因之一,称为了Java体系中一块重要的基石。 [size=large]类与类加载器[/size] 类加载器虽然只用于实现类的加载动作,但它在Java程序中起到的作用却远远不限于类加载阶段。对于任意一个类,都需要由加载它的类加载器和这个类本身一同确立其在Java虚拟机中的唯...
2015-01-01 22:38:30 85
原创 Random rand = new Random(47);
这句代码在Thinking in java中很常见[code="java"]Random rand = new Random(47);[/code]但是下面两句代码放在一起就会有点晕了[code="java"]Random rand = new Random(47);int i = rand.nextInt(100);[/code]生成的随机数范围到底是什么,是0-47...
2014-11-05 00:21:27 1115
原创 JDK自动装箱/拆箱
先把坑站着,有空再详写[quote]http://blog.csdn.net/xubo578/article/details/7039839[/quote][quote]http://blog.csdn.net/derson2388/article/details/8026518[/quote][quote]http://blog.csdn.net/lg...
2014-11-04 23:06:21 70
原创 Java(多)线程中注入Spring的Bean
[size=large][b]问题说明[/b][/size]今天在web应用中用到了Java多线程的技术来并发处理一些业务,但在执行时一直会报NullPointerException的错误,问题定位了一下发现是线程中的Spring bean没有被注入,bean对象的值为null。[size=large][b]原因分析[/b][/size]web容器在启动应用时,并没有提前将线程中的...
2014-10-26 10:53:05 405
maven+velocity+spingmvc+ibatis+mysql
2013-07-22
spingmvc+velocity+ibatis+mysql开发
2013-07-22
图书管理系统(重点大学本科生毕设已通过答辩)
2011-04-13
Java学生成绩管理系统
2009-12-23
重点大学本科生聊天程序毕业设计
2009-10-24
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人