![](https://img-blog.csdnimg.cn/20201014180756922.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
J2SE
qian_348840260
这个作者很懒,什么都没留下…
展开
-
并发容器技术选型
并发安全的mapHashTableSynchronizedMapConcurrentHashMap CopyOnWriteMap NonBlockingHashMap 并发安全的setSynchronizedSetConcurrentHashMap#newKeySetCopyOnWriteArraySetNonBlockingHashSetHashTable SynchronizedMap SynchronizedSe...原创 2021-01-19 17:53:29 · 221 阅读 · 0 评论 -
java8 常用日期函数
Instant begin = Instant.now(); Thread.sleep(500); System.out.println(Duration.between(begin, Instant.now()).toMillis()); DateTimeFormatter pattern = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"); Local...原创 2020-07-28 15:16:43 · 476 阅读 · 0 评论 -
ConcurrentMap的实现原理
http://blog.csdn.net/lihe2008125/article/details/6309783转载 2014-11-12 13:29:57 · 637 阅读 · 0 评论 -
内存泄露和内存溢出
一、为什么要了解内存泄露和内存溢出? 1、内存泄露一般是代码设计存在缺陷导致的,通过了解内存泄露的场景,可以避免不必要的内存溢出和提高自己的代码编写水平; 2、通过了解内存溢出的几种常见情况,可以在出现内存溢出的时候快速的定位问题的位置,缩短解决故障的时间。 二、基本概念 理解这两个概念非常重要。 内存泄露原创 2014-08-29 15:24:10 · 572 阅读 · 0 评论 -
神人文章汇总
http://www.cnblogs.com/skywang12345/category/455711.htmlhttp://www.blogjava.net/xylz/archive/2010/07/08/325587.html转载 2014-07-10 15:36:28 · 523 阅读 · 0 评论 -
分布式服务框架 Zookeeper -- 管理分布式环境中的数据
http://www.ibm.com/developerworks/cn/opensource/os-cn-zookeeper/ 非常棒的一篇入门级介绍,写的很清晰转载 2013-06-17 11:43:31 · 583 阅读 · 0 评论 -
Http教程
1.http://www.cnblogs.com/loveyakamoz/archive/2011/07/21/2112804.html2.http://blog.csdn.net/zhuyingqingfen/article/details/76100983.http://www.iteye.com/topic/11251834.http://blog.chi转载 2013-05-22 11:06:37 · 1058 阅读 · 0 评论 -
NIO-netty-入门学习
http://www.it165.net/pro/html/201207/3260.html http://my.oschina.net/XYleung/blog/119646原创 2013-04-26 15:15:29 · 673 阅读 · 0 评论 -
rmi入门
先来一个最简单的例子:1.业务接口类package Simple;import java.rmi.Remote;import java.rmi.RemoteException;public interface Business extends Remote{ String doBusiness(String businessCode) throws RemoteEx原创 2013-05-04 14:16:14 · 960 阅读 · 0 评论 -
单例模式以及通过反射和序列化破解单例模式
单例模式可以有以下几种方式:饿汉方式懒汉方式双重检查加锁懒汉方式内部类方式枚举方式破解单例模式有两种方式:通过反射的方式和通过序列化的方式。下面将一一对此进行分析。饿汉方式非常简单,即使用一个初始化的静态变量,代码如下:?123456789public转载 2014-10-13 17:18:34 · 645 阅读 · 0 评论 -
查看某个方法的外层调用(类似于eclipse的open call hierarchy功能)
for(int idx=1;idx<=20;idx++){ Class clazz=Reflection.getCallerClass(idx); if(clazz!=null){ 。。。。。。 } } public static String getCaller(int idx){ Exception ex=n原创 2013-05-03 10:47:59 · 1955 阅读 · 0 评论 -
String s=new String("abc")创建了几个对象?
云端飘http://www.cnblogs.com/ydpvictor/archive/2012/09/09/2677260.htmlString s=new String("abc")创建了几个对象?String str=new String("abc"); 紧接着这段代码之后的往往是这个问题,那就是这行代码究竟创建了几个String对象呢转载 2015-03-30 16:43:30 · 464 阅读 · 0 评论 -
Spring 的优秀工具类盘点
文件资源操作和 Web 相关工具类https://www.ibm.com/developerworks/cn/java/j-lo-spring-utils1/特殊字符转义和方法入参检测工具类http://www.ibm.com/developerworks/cn/java/j-lo-spring-utils2/转载 2015-10-14 11:03:29 · 465 阅读 · 0 评论 -
shiro session绑定
/** * Copyright © 2012-2014 JeeSite All rights reserved. */package com.zrj.depository.admin.common.security.shiro.session;import java.io.Serializable;import java.util.Collection;i转载 2016-03-17 11:34:55 · 2459 阅读 · 0 评论 -
RSA加密解密及RSA签名和验证
1.RSA加密解密: (1)获取密钥,这里是产生密钥,实际应用中可以从各种存储介质上读取密钥 (2)加密 (3)解密2.RSA签名和验证 (1)获取密钥,这里是产生密钥,实际应用中可以从各种存储介质上读取密钥 (2)获取待签名的Hash码 (3)获取签名的字符串 (4)验证3.公钥与私钥的理解: (1)私钥用来进行解密和签名,是给自己用的。 (2)公钥由本人公开,用于加原创 2016-06-28 11:44:26 · 487 阅读 · 0 评论 -
常用API简易写法
com.google.common.base.Splitter.on(",").trimResults().splitToList(specialCity);StringUtils.join(driverIdList, ",");Lists.partition(driverIds, MAX_SIZE);driverList.stream().map(e -> e.getSc...原创 2019-03-22 11:52:26 · 608 阅读 · 0 评论 -
并发编程网-并发入门
http://ifeve.com/java-concurrency-thread-directory/原创 2013-04-26 15:14:29 · 722 阅读 · 0 评论 -
http://docs.oracle.com/javase/6/docs/
官方文档,不错的原创 2013-04-24 13:56:59 · 1677 阅读 · 0 评论 -
Java内存管理(二、Java垃圾回收)
二、Java垃圾回收1. JVM运行环境中垃圾对象的定义 一个对象创建后被放置在JVM的堆内存中,当永远不再引用这个对象时,它将被JVM在堆内存中回收。或 当对象在JVM运行空间中无法通过根集合(root set)到达时,这个对象就被称为垃圾对象。2. 堆内存* 在JVM启动时被创建;堆内存中所存储的对象可以被JVM自动回收,不能通过其他外部手段回收* 堆内存可分为两转载 2010-08-19 11:20:00 · 618 阅读 · 0 评论 -
一篇很不错的解析hashmap原理的文章
http://www.iteye.com/topic/539465转载 2012-06-02 10:32:44 · 1145 阅读 · 0 评论 -
JAVA属性编辑器
java.beans.PropertyEditor的从字义来看是一个属性编辑器,但总觉得它的作用更像一个转换器--从字符串转换为类对象的属性。java.beans.PropertyEditor接口定义的方法有好几个,但是最重要为下面两个: void setValue(Object value) void setAsText(String text) throws java.lang.I原创 2010-08-18 16:20:00 · 845 阅读 · 0 评论 -
透析JDK内省机制
/** *1.JDK中的内省机制提供了对JavaBean的相关处理 *2.理解内省,首先要明确在JavaBean中属性和实例变量的区别 *3.通过该实例可以更好的理解框架在背后是如何操作JavaBean,以及EL,OGNL表达式对Bean属性的处理机制 *4.是不是属性在于setter和getter方法,跟类的实例变量没有关系,但是为了缩写规范,尽量保证实例变量原创 2010-01-26 14:46:00 · 1084 阅读 · 1 评论 -
Java内存管理(一、内存分配)
关于Java内存分配,很多问题都模模糊糊,不能全面贯通理解。今查阅资料,欲求深入挖掘,彻底理清java内存分配脉络,只因水平有限,没达到预期效果,仅以此文对所研究到之处作以记录,为以后学习提供参考,避免重头再来。 一、Java内存分配1、 Java有几种存储区域?* 寄存器 -- 在CPU内部,开发人员不能通过代码来控制寄存器的分配,由编译器来管理* 栈转载 2010-08-19 11:19:00 · 393 阅读 · 0 评论 -
初探java内存机制_堆和栈
问题的引入:问题一:String str1 = "abc"; String str2 = "abc"; System.out.println(str1==str2); //true问题二:String str1 =new String ("abc"); String str2 =new String ("abc"); System.out.println(str1=转载 2010-08-19 11:17:00 · 418 阅读 · 0 评论 -
序列化与反序列化
serialVersionUID的作用 当我们的类实现了Serializable接口后,会有一个警告,告诉你需要生成一个serialVersionUID属性。这个serialVersionUID是做什么用的呢?其实这是JAVA序列化的版本控制功能。当序列化对象时会把这个属性写入,当反序列化时则会把这个属性取出,然后与JAVA类中的serialVersionUID属性值对比,如果一致,则认为是原创 2012-06-15 10:19:41 · 481 阅读 · 0 评论 -
泛型的一些随笔
常用术语:参数化的类型 List实际类型参数 String泛型 List形式类型参数 E无限制通配符类型 List原生态类型 List有限制类型参数 递归类型限制 >有限制通配符类型 List泛型方法 static List asList(E[])类型令牌 String.class备注:原创 2012-06-18 10:46:02 · 401 阅读 · 0 评论 -
泛型反射
import java.lang.reflect.GenericArrayType;import java.lang.reflect.Method;import java.lang.reflect.Modifier;import java.lang.reflect.ParameterizedType;import java.lang.reflect.Type;import ja原创 2012-06-20 18:54:41 · 443 阅读 · 0 评论 -
泛型学习笔记
类型变量(参数)的命名规则类型变量使用大写形式,且比较短,这是很常见的。在Java库中,使用变量E表示集合的元素类型,K和V表示表的关键字与值的类型。T(需要时还可以用临近的字母U和S)表示"任意类型"。泛型类泛型方法示例: class ArrayAlg { public static T getMiddle(T[] a) { return原创 2012-06-20 14:03:02 · 451 阅读 · 0 评论 -
加载、类加载、类加载器
虚拟机把描述类的数据从Class文件加载到内存,并对数据进行校验,转换解析和初始化,最终形成可以被虚拟机直接使用的JAVA类型,这就是虚拟机的类加载机制。 类加载的生命周期包括:加载Loading, 验证Verification, 准备Preparation, 解析Resolution, 初始化Initialization, 使用Using和卸载Unloading. 除解析阶段外,转载 2012-07-10 10:49:27 · 1158 阅读 · 0 评论 -
Java 6 JVM参数选项大全(中文版)
Java 6 JVM参数选项大全(中文版) 作者:Ken WuEmail: ken.wug@gmail.com转载本文档请注明原文链接 http://kenwublog.com/docs/java6-jvm-options-chinese-edition.htm! 本文是基于最新的SUN官方文档Java SE 6 Hotspot VM Options 编写的译文。主要介转载 2012-06-29 09:18:12 · 833 阅读 · 0 评论 -
枚举中的枚举
枚举类enum是一个final类,不允许子类扩展。因此要扩展枚举,需要借助于接口。下面的这个例子可以解决枚举中枚举的问题。 public interface Food { //开胃类 enum Appetizer implements Food{ SALAD,SOUP,SPRING_ROLLS; } //主食类 enum MainCourse impleme原创 2012-08-07 14:56:21 · 612 阅读 · 0 评论 -
常用的排序算法实现
排序工具类:package sort;public class SortUtil { public static void swap(int[] array, int i, int j) { int temp; temp = array[i]; array[i] = array[j];原创 2012-08-22 15:39:28 · 460 阅读 · 0 评论 -
不正当使用HashMap导致cpu 100%的问题追究(HashMap死循环探究)
一篇技术含量非常高的多线程下HashMap死循环造成cpu100%的研究文章http://www.iteye.com/topic/962172转载 2012-08-23 11:27:03 · 841 阅读 · 0 评论 -
java.util.zip包无法正常解压rar软件压缩的rar文件
java.util.zip包无法正常解压rar软件压缩的rar文件,可是可以解压缩java.util.zip包自己压缩的rar,到底是怎么回事? 测试发现,使用java.util.zip包压缩的文件明显比使用rar软件压缩的文件大一点。原来:rar软件选择zip格式压缩是可以解压的 rar是商业压缩算法 所以java是无法进行解压的zip压缩算法之前是很流行的,并且开源,后来rar压缩算法原创 2012-09-06 16:50:14 · 1267 阅读 · 0 评论 -
Java常量池详解
http://www.cnblogs.com/DreamSea/archive/2011/11/20/2256396.html转载 2013-01-07 18:42:10 · 332 阅读 · 0 评论 -
HashSet详解
1.如何保证无序不重复 Java中每一个对象都对应一个int型的哈希码,在向HashSet添加元素时,JVM会通过对象的HashCode()方法获取此对象的哈希码,然后对某一个整数(hashSet的初始容量)求余,将这个元素放在Set中位于模数的位置。如果该位置已存在元素,即出现要把两个元素放在同一位置的时候,如s1和s2,会判断s1.equal(s2),如果值为真,说明s1和s2相同原创 2010-01-25 15:03:00 · 1881 阅读 · 1 评论