崔成龙 . 勇往直前

httpclientutil开源项目创建者。关注开源~https://github.com/Arronlong

排序:
默认
按更新时间
按访问量

深度剖析ConcurrentHashMap源码

概述 你可能会在一些技术类的书籍上看到下面这样一段关于HahsMap和HashTable的表述: HashMap是非线程安全的,HashTable是线程安全的。 不知道大家有什么反应,我当时只是记住了,知道面试的时候能回答上来就行了…至于为什么是线程安全的,内部怎么实现的,却不怎么了解。...

2017-06-28 22:48:01

阅读数:914

评论数:2

Java工作利器之常用工具类(四)——Json工具类,使用正则支持xml与json互转

看到这个题目是不是大部分人都不屑一顾,的确基本上每个java程序猿都写过json工具类,也有很多人都使用json-lib.jar封装过类似的功能,但是我这里使用了正则来支持xml与json的互转,减少了jar包的引入。基本上满足了需求。当然如果你需要更强大的功能,还是最好使用json-lib来实现...

2015-11-16 10:45:30

阅读数:11396

评论数:1

Java工作利器之常用工具类(三)——字符串工具类-智能截取

前两篇博文简单分享了一下数字工具类,现在说说字符串工具类。   相信大家都自己封装过或者用过guava封装的Strings,但是有没有可以智能截取,比如说“截取整数第二个到倒数第二个”的字符串。你是否还需要自己写str.substring(1,str.length()-2)。如果是的话,请继续...

2015-11-16 10:45:17

阅读数:8068

评论数:0

Java工作利器之常用工具类(二)——数字工具类-大数乘法、加法、减法运算

上篇分享了一下数字转汉字的小功能,这里再分享一下大数相乘、相加、相减的功能。其他的不做过多的铺垫了,我先讲一下各个功能的计算原理。   Ⅰ. 乘法运算 为什么先说乘法运算——因为我先做了乘法运算。其实思路也是很多的,但是最终我参考了网络上的一种计算方案,然后做了很多的修改。感觉这个在思路上应...

2015-11-16 10:45:16

阅读数:6415

评论数:0

Java工作利器之常用工具类(一)——数字工具类-数字转汉字

本人是从事互联网金融行业的,所以会接触到一些金融类的问题,常见的一种就是数字转汉字大小写的问题。所以抽空就写了一个小小的工具类,实现了数字转汉字、大数相加、相减、相乘的工具类,希望能帮助有需求的同行们。本篇就分享一下数字转化为汉字的思路吧。   数字转汉字的原理: 拆分:由于整数部分要加权值...

2015-11-16 10:44:59

阅读数:7674

评论数:7

简单的利用UrlConnection,后台模拟http请求

这两天在整理看httpclient,然后想自己用UrlConnection后台模拟实现Http请求,于是一个简单的小例子就新鲜出炉了(支持代理哦): public class SimpleHttpTest { public static String send(String urlStr, M...

2015-11-11 19:13:58

阅读数:6327

评论数:4

你真的真的理解Java的按引用传递吗?

今天在博客上看到《你真的理解Java的按引用传递吗?》这篇博文,就好奇进去看了一下,结果发现,其实说了半天,并没有特别清楚的解释。尤其是对于传递String类型时的例子时,有点发蒙。        接触Java也有好几年了,本来以为这些简单自己早就懂了,结果在看到最后一个例子时,直接就把答案给猜错...

2015-11-05 17:01:03

阅读数:5383

评论数:3

任务调度(四)——ScheduledExecutorService替代Timer,实现多线程任务调度

上篇博文《任务调度(三)——Timer的替代品ScheduledExecutorService简介》已经对ScheduledExecutorService做了简单介绍,其实使用ScheduledExecutorService来替代Timer也是迫不得已的事情。主要原因如下: Timer不支持多...

2015-08-07 13:25:31

阅读数:8393

评论数:4

任务调度(三)——Timer的替代品ScheduledExecutorService简介

先前的两篇博文《任务调度(一)——jdk自带的Timer》和《任务调度(二)——jdk自带的Timer 动态修改任务执行计划》中,简单介绍了一下Timer,可以实现几本的功能,但是在多线程方面却略显不足。        根据Timer源码,可以看到Timer是单线程的。所以task都是串行执...

2015-08-06 19:07:41

阅读数:11913

评论数:2

任务调度(二)——jdk自带的Timer 动态修改任务执行计划

上一篇博文《任务调度(一)——jdk自带的Timer》中,简单介绍了一下Timer,本文将分享一下如何动态修改Timer制定的计划。       有人问我Timer和Quartz框架的区别。那我就说一下我的理解。Timer毕竟是jdk自带的简易的任务调度工具类。跟Quartz比肯定是鸟枪与大炮...

2015-05-09 15:21:11

阅读数:9002

评论数:9

任务调度(一)——jdk自带的Timer

说到任务调度,大家可能会想到Quartz框架,但是jdk自带的简单任务调度工具类,反而了解的人并不是很多。我觉得如果你的业务相对简单的话,没必要非得用Quartz框架,使用Timer完全可以胜任的。简单来分享一下我了解的Timer。   Timer是jdk中提供的一个定时器工具,使用的时候会在...

2015-05-08 02:13:17

阅读数:13511

评论数:13

通过反射克隆对象,对象复制(克隆),对象合并工具类 升级版

       上一篇博文提到的工具类,主要是用在对象的复制方面,而且代码有点冗余了。这个工具类也是我现在在做的项目中用到的。        现在在项目中遇到了一个 对象合并的需求。原先的工具类是不满足的,只能全部复制,所以又将原先的工具类做了修改。添加了对象合并的功能,同时还多设置了两个个参数,...

2015-01-30 20:31:36

阅读数:4248

评论数:6

通过反射克隆对象,对象复制(克隆)工具类

最近做的项目中,经常会遇到用视图来操作数据库的,但是页面需要的则是某个实体对象,在controller层查出list 还要把将view对象转化成entity对象。需要写一大堆的get和set方法,而且如果实体增删字段的话,还需要把转化代码再修改一下,让人头疼。        当我需要操作一个实体对...

2015-01-27 20:24:39

阅读数:3853

评论数:7

byte[]与各种数据类型互相转换示例

在socket开发过程中,通常需要将一些具体的值(这些值可能是各种JAVA类型)转化为byte[]类型,为此我总结了如下这个示例,贴出来,以便经常翻看: public class TestCase { /** * short到字节数组的转换. */ public static b...

2014-12-31 23:54:43

阅读数:2264

评论数:0

使用正则表达式,从网站上获取指定数据

最近做的一个项目中,其中有这样一个需求:用户要求我们实时在地图上显示某些指定景点的人数,但是却没有给我们数据的接口。不过可以从网页上获取到最新的数据,每小时更新一次。所以经理安排我做一个实时从网页上抓取数据的功能。 既然是网页,那么无用的数据肯定是非常多的,所以就需要用正则表达式来过...

2014-07-31 00:16:02

阅读数:5684

评论数:5

javaweb:判断当前请求是否为移动设备访问

这段时间都是在做pc端的业务,结果经理找到我说,可能要做移动端的应用,后台逻辑还是用我写的逻辑,但是需要改动一些,看看怎么处理。        我觉得,最好是在一个第二统一改动一下,不要改懂太多的地儿,这样可以从一定程度上减少bug的数量。由于移动端和pc端还是稍微有些区别的,我的想法是首先应该判...

2014-07-07 18:27:02

阅读数:26749

评论数:23

java中使用反射获取pojo(实体)类的所有字段值

说起反射,不得不说它实在是太强大了,通过反射就可以轻轻松松拿到各种东东,如果你想在项目中解除对某个类的依赖,可以考虑用反射。        今天跟大家分享的是通过java中的反射,获取pojo类的所有字段值。        为什么要做这个操作的呢?主要是为了重写实体类的toString方法...

2014-04-19 15:43:54

阅读数:17238

评论数:18

Web版RSS阅读器(五)——初步完成阅读功能

上一篇博文《Web版RSS阅读器(四)——定制自己的Rss解析库myrsslib4j》中,已经分享给大家制作自己的rss解析库。稍微有点遗憾的是,它仅仅支持rss格式的博客。现在给大家分享一下我基于rome修改而成的另一款rss解析库——myrome,完美支持atom和rss 2种格式。  ...

2013-08-27 07:59:33

阅读数:5680

评论数:46

Web版RSS阅读器(四)——定制自己的Rss解析库myrsslib4j

在上篇博文《Web版RSS阅读器(三)——解析在线Rss订阅》中,已经提到了遇到的问题,这里再详细说一下。 在解析rss格式的订阅时,遇到的最主要的问题是,出现了“Server returned HTTP response code: 403 for URL: http://xxx...

2013-08-18 21:20:12

阅读数:4573

评论数:30

Web版RSS阅读器(三)——解析在线Rss订阅

Web版RSS阅读器 上篇博客《 Web版RSS阅读器(二)——使用dTree树形加载rss订阅分组列表》已经写到读取rss订阅列表了,今天就说一下,当获取一条在线rss订阅的信息,怎么去解析它,从而获取文章或资讯。

2013-08-09 09:12:41

阅读数:8102

评论数:40

提示
确定要删除当前文章?
取消 删除