Java 综合
文章平均质量分 74
iteye_4614
这个作者很懒,什么都没留下…
展开
-
Java 读取本机IP地址
今天要跟大家分享的是,一个读取本机ip地址的方法。 private List<String> getLocalIps() { ArrayList<String> allIP = new ArrayList<String>(); Enumeration<NetworkInterface> netInterfaces = ...2010-08-19 12:35:17 · 95 阅读 · 0 评论 -
Quartz配置...
关于cronExpression的介绍: 字段 允许值 允许的特殊字符 秒 0-59 , - * / 分 0-59 , - * / 小时 0-23 , - * / 日期 1-31 , - * ? / L W C 月份 1-12 或者 JAN-DEC , - * / 星期 1-7 或者 SUN-SAT , - * ? / L C # 年(可选) 留空, 1970-2099 , - * / 表达式意...原创 2010-06-18 08:58:09 · 122 阅读 · 0 评论 -
如何阅读源代码
众所周知,要想写出好的程序,除了要经常写之外,还有看看别人是怎么写的,所以读别人的程序是非常重要的;如今是个信息交换十分发达的时代,你可以轻易的就看到顶尖级选手的代码;开源事业蒸蒸日上,确实是所有程序员的福音。但如何阅读别人的代码呢?尤其对于初学者而言,确实是个难题,就像碰到一漂亮的刺猬,实在不知道如何下嘴。 规则一,你读的越多,你就越容易读懂,因为高手写程序的思维都是...2011-08-24 14:03:02 · 269 阅读 · 0 评论 -
Visitor模式通俗化
23种设计模式中,最难理解的可能就是Visitor, 而难理解的主要原因却又有相当的原因是不知道什么时候要用它,貌似它把问题搞复杂了。我一直不太能真正的领会它,直到最近的项目中我无意中用到,然后一对比,发现就是Visitor模式,只是没有把Visitor抽象成接口。 面向对象中很重要的一条是是抽象,那为什么要抽象呢?其根本原因是为了解耦,而其直接原因是为了把“可变的和不...2011-08-29 14:12:51 · 132 阅读 · 0 评论 -
jvisualvm结合jstatd进行远程监控
jvisualvm是Jdk自带的,具体点,据说是jdk1.6-07后加到jdk中的。本地监控很简单,在JAVA_HOME/bin中打开jvisualvm即可,所有本机的java程序会自动列出来。我们来说下远程监控的问题。 当然网上有很多相关资料,我就把我实践的结果列出来吧。 环境, 本地: WIN-XP sp3, jdk1.6.0_17 ...2011-08-31 16:33:48 · 283 阅读 · 0 评论 -
也说递归
递归算法是程序员的最重要的基本功之一,也是相对比较难理解的一种;尤其是当今框架盛行,自己不愿/不需要思考的编程年代,递归是检验程序员级别的方法之一。其实不要怕,它很简单,就是方法调用方法而已,只不过方法时调用自己而已(或是曲折调自己),不就是如此吗? 写出递归的程序需要什么?抽象!对,就是抽象,不要以为抽象是面向对象编程的专有名词。碰到问题时先不要考虑具体的细节,...2011-12-23 11:41:22 · 132 阅读 · 0 评论 -
TCP实现P2P通信、TCP穿越NAT的方法、TCP打洞
先看一下技术背景:Internet的迅速发展以及IPv4 地址数量的限制使得网络地址翻译(NAT,Network Address Trans2lation)设备得到广泛应用。NAT设备允许处于同一NAT后的多台主机共享一个公网(本文将处于同一NAT后的网络称为私网,处于NAT前的网络称为公网) IP 地址。一个私网IP 地址通过NAT设备与公网的其他主机通信。公网和私网IP地址域,如下图所示:广域...原创 2010-07-14 11:35:01 · 147 阅读 · 0 评论 -
编码的依据是什么?
编码的依据是什么?很多人也许是不假思索就回答“需求!” 很多人也确实是这么做的,而其实有些人不是依据需求在编码,这是他们自己不这么认为而已。 从需求过度到代码,总觉得有点突然,是不是缺点什么呢?是的,中间应该有个设计的过程。不论是架构设计,详细设计,还是一个算法的设计,归根到底都是有设计的,只是并不是所有的设计都写着纸上,画成图而已。所以,编码的根据不是需求,是设计。 ...2011-09-21 15:11:45 · 934 阅读 · 0 评论 -
MD5加密及随机数生成
今天贴两个简单的方法,需要的时候不用自己再写, public static String md5(String plaintext){ MessageDigest m; try { m = MessageDigest.getInstance("MD5"); m.reset(); m.update(plaintext.getBytes()); ...2011-02-25 11:19:10 · 1168 阅读 · 0 评论 -
使用Cobra解析html, 及其提取table内容的例子。
以下方法读取一个html格式的String,然后把其中的table内容读出,存入一个Arralyst, 该list装入的是String[], 即每一个String[]元素代码table的一行。 private List parseTable(String htmlStr) throws SAXException, IOException { Reader reader...2011-04-07 09:40:18 · 149 阅读 · 0 评论 -
封装好的类,使用httpClient访问网页。
做了好几个httpclient访问网站的项目了,我发布一个可以直接使用的类供大家参考吧;希望对想用httpclient的人有所帮助。 import java.io.IOException;import java.util.Enumeration;import java.util.Properties;import org.apache.commons.htt...2010-06-10 13:13:11 · 174 阅读 · 0 评论 -
使用Server转发的聊天程序 (短小精悍,无重复代码, 支持多客户端)
Server 入口程序, 仅一个类,其中 hsClientSocket 用来保存所有已经连上的客户端连接,以便实现转发. SocketConnection这个类是封装了socket, 以便Client跟Sever都要用到的逻辑实现共用, MessageReceivedHandler是个接口,传给SocketConnection, 以便让SocketConnection...2010-05-05 10:51:37 · 166 阅读 · 0 评论 -
我不知道何谓动态绑定
CSDN有一贴问何谓动态绑定 http://topic.csdn.net/u/20101010/17/76b449c3-916e-41a2-91e8-a7ba932df906.html, 说实话我也不知道,只是凭自我感觉,我的回复如下: ----------------------------------------所谓动态绑定,是这个概率搞复杂了,说白了就是,你定义了有一个...2010-10-22 16:01:58 · 81 阅读 · 0 评论 -
Java学习之路
从事软件行业工作已经近7年了,实际Java开发也就是近4年.真正从怎么会用Eclipse开始学起. 问过同事一个对象为什么可以几个类共用 ...到现在4年后的今天,也不敢说Java学的有多好,相反觉得有很多东西要去学习. 只想就我个人的一些心得,给初学者一点可资借鉴的意见吧. 今天先说说学习Java的必备条件, 其一,兴趣. "兴趣是最好的老师",很熟也很俗,但却...原创 2010-01-28 21:12:27 · 82 阅读 · 0 评论 -
Java学习之路 (二)
前面说过学习java的必备条件,或是说学习编程的必备条件,今天就把我个人的学习历程列出来与大家分享。 推荐入门书,Think in java,就是Java编程思想。如果英文好的话,尽量看英文的,因为再怎么厉害的人,由于文化差异,不可能完全能表达作者的那个“味”。就“面向对象”这个概率来说,英文其实很好理解,可这中文翻译却很让人糊涂,而且你还真找不到更好的翻译办法。所以看英文书,最好看...原创 2010-01-28 21:46:27 · 101 阅读 · 0 评论 -
Java学习之路(三)
---副标题, 积极主动地学习。 刚开始工作那年,公司培训说“吃亏就是占便宜”,“比顾客要求的做的更好”,当时觉得纯属愚人思想。但这两句话确实对我影响深远,因为这两句“愚人”的言论,我收获了很多。 为什么要吃亏呢?老板给多少钱我...原创 2010-01-29 20:48:29 · 113 阅读 · 0 评论 -
Java学习之路拾遗
学习最大的天敌就是忘记,所以我想把我这几年的学习的东西,一点一点拾起来,算是复习,主要是对Java基础知识再回首,包括常用设计模式再内。具体计划大致如下: 第一阶段,以Thinking in java作为复习教材,一章一章的过,包括部分原文转载,然后翻译,写下自己的心得。 第二阶段,找一个自己完全全新开源项目,进行源代码分析学习,一步一步写下学习笔记,也同时...原创 2010-01-30 13:12:38 · 146 阅读 · 0 评论 -
从源头上捕获线程中产生的异常
我们经常碰到线程突然死掉,但是又找不到原因,总不能在每个线程的run方法中都加上Try Catch吧, 况且对第三方框架内启的线程你想加Try catch还加不了呢? 怎么办? 现在有一个现成的办法,就是给每个线程"加个"默认的Try Catch, 任意一个线程出现没有捕获住的异常都执行我们自定义的那段代码。Thread中提供一个 setDefaultUncaughtExcept...2010-09-26 18:01:01 · 140 阅读 · 0 评论 -
得到当前系统中所有线程的办法
有时候我们希望找到系统中的所有线程,有没有什么办法呢?是可以做到的,代码如下: public static Thread[] findAllThreads() { ThreadGroup group = Thread.currentThread().getThreadGroup(); ThreadGroup topGroup = group; // Found t...2010-09-27 11:15:58 · 148 阅读 · 0 评论 -
使用POI操作Excel的代码
经常会碰到把数据存到excel的需求,虽然使用POI写起来确实不算复杂,但每次都写近乎一样的代码有点烦躁,下面是我经常用到的代码,满足一般的要求,高级的excel操作没有用到,不过应该已经满足了大部分的要求。 需引入的jar包如下,poi-2.5.1-final-20040804.jarpoi-contrib-2.5.1-final-20040804.jarpoi-sc...2011-06-20 09:18:09 · 110 阅读 · 0 评论 -
论接口与抽象类的真正区别
关于接口与抽象类的区别, 有着千篇一律的答案,我就不重复那些了, 什么可以实现多个接口,但只能继承一个类;抽象类中可以有方法是的实现,而接口没有,等等...... 那都没有说错,但没有说的问题的关键. 为什么接口跟抽象类有那些不同, 这些不同的根源是什么? 根源是它们的真正含义,或说作用是截然不同的. 不同在哪里? 一言以辟之, "抽象类是为了把相同的东西提取...2010-03-30 21:54:34 · 179 阅读 · 0 评论 -
废话Log4j
使用Log4j去管理日志多年了,基本每次都是按照前面项目中用过的代码Copy过来,也基本了解所有配置信息的意义。不过一直不明白为啥总要 Logger.getLogger(ClassName.class)去获取一个Logger, 主要是不明白为啥总要传个Class进去;因为随便传个什么字符串的结果貌似没有任何区别,但为何所有的例子都要搞个Class传进去?难道有什么深意不成? ...2011-07-26 11:41:43 · 72 阅读 · 0 评论 -
网页抓取之新方法 (在java程序中使用jQuery)
你想要的任何信息,基本上在互联网上存在了,问题是如何把它们整理成你所需要的,比如在某个行业网站上抓取所有相关公司的的名字,联系电话,Email等,然后存到Excel里面做分析。网页信息抓取变得原来越有用了。 一般传统的网页,web服务器直接返回Html,这类网页很好抓,不管是用何种方式,只要得到html页面,然后做Dom解析就可以了。但对于需要Javascript生成的...2012-03-07 13:57:41 · 357 阅读 · 0 评论