java综合
文章平均质量分 77
liuxinglanyue
这个作者很懒,什么都没留下…
展开
-
Java牛角尖【011】: Java中只支持单继承吗?
又是一个牛角尖,只是语言不够严谨而已,Java中只支持类的单继承,接口之间的继承同样也是使用extends关键字,但是接口之间是支持多继承的,如下面的例子: Java代码 1. interface IP1 { 2. } 3. 4. interface IP2 { 5. } 6. 7. public interfa...原创 2010-11-14 20:29:44 · 215 阅读 · 0 评论 -
将Reader转为String
public void printReader(Reader reader){ BufferedReader r = new BufferedReader(reader); StringBuffer sb = new StringBuffer(); String line; try { while((line=r.readLine())!=nu...2010-11-17 21:19:36 · 1329 阅读 · 0 评论 -
Java关键字synchronized详解(转)
synchronized 关键字,代表这个方法加锁,相当于不管哪一个线程A每次运行到这个方法时,都要检查有没有其它正在用这个方法的线程B(或者C D等),有的话要等正在使用这个方法的线程B(或者C D)运行完这个方法后再运行此线程A,没有的话,直接运行 它包括两种用法:synchronized 方法和 synchronized 块。1. synchronized 方法: 通过...原创 2010-11-19 14:22:44 · 83 阅读 · 0 评论 -
JAVA利用properties实现的一个小功能(转)
这次说的小功能呢,其实是跟项目中用到的知识有关,虽然对别人可能会起不到什么作用,但博客是我记录知识的好地方,所以便总结在此目标功能:准备好N个账户,名字的命名形式为:用户名+编号,每次登陆使用一个不同用户,当然这个账户不能重复,程序实现原理:首先呢准备好一个List将用户个数的集合放入进去:这个LIST支持的得是Long类型而不是int,为什么这么做呢,因为后面要用到System.cu...原创 2010-11-19 14:24:29 · 69 阅读 · 0 评论 -
[转载]JAVA开发者最常去的25个英文网站
http://www.infoq.com/ - Info IT新闻 http://www.apache.org/ - Apache基金会 http://www.springsource.org/ - 广大Java开发者喜爱的Spring http://www.hibernate.org/ - 开源ORM框架 http://sourceforge.net/ - 开源技术的集结地 http://www...原创 2010-11-19 14:33:40 · 84 阅读 · 0 评论 -
Java开发过程中文件上传的各种方式全面总结(转)
到目前为止:我接触到的有关上传的类型有这么几种JSP+Servlet的,Struts2的,Struts的,FTP的,ExtJs的,Flex的最终还是建议看看,后面详细写的Struts2的上传文章最为实用第一:JSP+Servlet上传这个最基础的上传示例[其实也可以完全在JSP上进行处理]我选用的包是Apache commons fileupload.jar下载地址:htt...原创 2010-11-19 14:50:14 · 86 阅读 · 0 评论 -
Java线程:大总结
Java线程是Java语言中一个非常重要的部分,Java5之前,多线程的语言支持还是比较弱的,内容也较少,写一个复杂的多线程程序是相当有挑战性的。 在Java5以后,Java对多线程做了很多扩展,扩展部分称之为并发包。这部分内容大大增强了Java多线程编程的能力,通过使用Java5线程新特征的API,可以很容易的做出复杂的多线程程序。与其他语言相比,已经是相当强悍了。 通过十多...原创 2010-11-24 17:24:29 · 68 阅读 · 0 评论 -
检测密码强度Demo(转)
<html><head><title>密码强度检测Demo</title><script type="text/javascript"> function passwordTest(obj){ var t=obj.value; var id=getResult(t); /...原创 2010-11-24 21:49:16 · 329 阅读 · 0 评论 -
Java 理论与实践: 正确使用 Volatile 变量
简介: Java™ 语言包含两种内在的同步机制:同步块(或方法)和 volatile 变量。这两种机制的提出都是为了实现代码线程的安全性。其中 Volatile 变量的同步性较差(但有时它更简单并且开销更低),而且其使用也更容易出错。在这期的 Java 理论与实践 中,Brian Goetz 将介绍几种正确使用 volatile 变量的模式,并针对其适用性限制提出一些建议。 转:http:...原创 2010-11-25 11:54:26 · 62 阅读 · 0 评论 -
关于VM的帖的目录(转)
VM相关的帖: 2010-11-12: ShanghaiOnRails第八次线下活动——你不需要知道的Ruby实现 2010-10-28: 通过jstat工具来查看jvmstat monitor的值 2010-10-21: 用Java获取full GC的次数?(2) 2010-10-20: 通过Java/JMX得到full GC次数? 2010-09-29: 请别再拿“String s = new...原创 2010-11-27 10:08:16 · 129 阅读 · 0 评论 -
DES加密解密和MD5加密解密算法
DES加密解密 import java.security.Key;import java.security.SecureRandom;import javax.crypto.Cipher;import javax.crypto.KeyGenerator;import sun.misc.BASE64Decoder;import sun.misc.BASE6...原创 2010-11-17 18:41:06 · 130 阅读 · 0 评论 -
停止Java线程,小心interrupt()方法
程序是很简易的。然而,在编程人员面前,多线程呈现出了一组新的难题,如果没有被恰当的解决,将导致意外的行为以及细微的、难以发现的错误。 在本篇文章中,我们针对这些难题之一:如何中断一个正在运行的线程。 背景...原创 2010-11-17 16:15:13 · 80 阅读 · 0 评论 -
TCP三次握手/四次挥手详解
1、建立连接协议(三次握手) (1)客户端发送一个带SYN标志的TCP报文到服务器。这是三次握手过程中的报文1。 (2) 服务器端回应客户端的,这是三次握手中的第2个报文,这个报文同时带ACK标志和SYN标志。因此它表示对刚才客户端SYN报文的回应;同时又标志SYN给客户端,询问客户端是否准备好进行数据通讯。 (3) 客户必须再次回应服务段一个ACK报文,这是报文段3。 2、连接终止协议(四次挥手...原创 2010-11-14 20:38:15 · 78 阅读 · 0 评论 -
动态代理Demo
package reflect;import java.lang.reflect.InvocationHandler;import java.lang.reflect.Method;import java.lang.reflect.Proxy;public class ProxyDemo { public static void main(String[] arg...原创 2010-11-14 20:38:45 · 72 阅读 · 0 评论 -
Java基本常识
1、面向对象的特征有哪些方面 1.抽象: 抽象就是忽略一个主题中与当前目标无关的那些方面,以便更充分地注意与当前目标有关的方面。抽象并不打算了解全部问题,而只是选择其中的一部分,暂时不用部分细节。抽象包括两个方面,一是过程抽象,二是数据抽象。 2.继承: 继承是一种联结类的层次模型,并且允许和鼓励类的重用,它提供了一种明确表述共性的方法。对象的一个新类可以从现有的类中派生,这...原创 2010-11-14 20:44:01 · 135 阅读 · 0 评论 -
Struts,Hibernate,Spring经典面试题收藏
Hibernate工作原理及为什么要用? 原理: 1.读取并解析配置文件 2.读取并解析映射信息,创建SessionFactory 3.打开Sesssion 4.创建事务Transation 5.持久化操作 6.提交事务 7.关闭Session 8.关闭SesstionFactory 为什么要用: 1. 对JDBC访问数据库的代码做了封装,大大...原创 2010-11-14 20:45:05 · 81 阅读 · 0 评论 -
hashcode 的作用
原文出处:http://blog.chenlb.com/2009/09/hashcode-effect.htmlJava 对象 Hashcode 的作用是什么?可以联想数据结构的哈希表(散列表)、哈希函数。Object.hashCode() 就是一个哈希函数,用来计算散列值以实现哈希表这种数据结构。看下哈希表结构:哈希表在一个数组中存储对象时,通过 hashCod...原创 2010-11-14 21:42:09 · 146 阅读 · 0 评论 -
Java牛角尖【012】: JDBC开发时为什么要用Class.forName("")
前几天看到一个帖子中提出一个问题,在JDBC的开发中为什么要使用Class.forName,可以不用这句吗? 我们从代码出发,来分析一下这个问题。 下面是一段我们常用的JDBC开发中的代码(注:本文中例子使用Mysql为例子。为方便演示,代码中忽略异常处理) view plaincopy to clipboardprint?Class.forName(...原创 2010-11-15 10:25:10 · 104 阅读 · 0 评论 -
Java牛角尖【013】: finally块中的代码一定会执行吗?
在Sun Tutorial中有这样一句话:The finally block always executes when the try block exits. This ensures that the finally block is executed even if an unexpected exception occurs. 看来finally块中的语句应该是总会执行的。 先...原创 2010-11-15 10:25:52 · 89 阅读 · 0 评论 -
JAVA同步机制
JAVA中synchronized关键字能够作为函数的修饰符,也可作为函数内的语句,也就是平时说的同步方法和同步语句块。假如再细的分类,synchronized可作用于instance变量、object reference(对象引用)、static函数和class literals(类名称字面常量)身上。 在进一步阐述之前,我们需要明确几点: A.无论synchronized关键字加在方法上还是对...原创 2010-11-15 15:38:06 · 62 阅读 · 0 评论 -
专注于java方向的各种技术的学习与研究
给大家介绍个网站 非常不错 http://www.ehelper.com.cn/blog/catalog.asp?cate=7原创 2010-11-16 17:38:29 · 119 阅读 · 0 评论 -
【转】学习算法之路
第一阶段:练经典常用算法,下面的每个算法给我打上十到二十遍,同时自己精简代码, 因为太常用,所以要练到写时不用想,10-15分钟内打完,甚至关掉显示器都可以把程序打 出来. 1.最短路(Floyd、Dijstra,BellmanFord) 2.最小生成树(先写个prim,kruscal要用并查集,不好写) 3.大数(高精度)加减乘除 4.二分查找. (代码可在五行以内)...原创 2010-11-27 10:15:54 · 89 阅读 · 0 评论 -
java学习——NIO篇
Nio也就是继JDK1.4之后关于io的新特性的new Io,也就是传说中的无阻塞io。Nio主要包括几个方面:ByteBuffer:Channel:Selector:原理部分下次再整理,本次主要是进行实例。下面要实现就是使用nio进行简单的文本传递。服务端:public class MainServer { private static final...原创 2010-11-27 10:20:12 · 65 阅读 · 0 评论 -
ssh菜鸟也要学会的基础教程
SSH基础 SSH是使用服务器的基础,想要安全地玩转SSH你需要学会以后的内容。 为什么要用SSH? 因为SSH方便啊,如果你要上传文件,FTP一个文件一个文件的传,可以耗费好几个小时,简直是糟蹋青春。 同时,SSH可以直接从源地址下载,方便吧,然后用口令解压就可以,不过SSH也有缺点,就是所有的东西都是不直观的,我一般都是SSH和FTP混着用,这样比较有效率,那个步骤那个方便就用那个。 说白了S...原创 2010-11-30 22:11:04 · 168 阅读 · 0 评论 -
JavaEye的搜索不能用了。
JavaEye的搜索不能用了,什么都搜索不到难道说要换搜索方式了。2010-11-30 22:31:46 · 101 阅读 · 0 评论 -
Java陷阱(2010版)
作为Apache软件基金会的成员之一,我对开源软件的立场倾向于支持更加自由的许可协议,例如Apache许可证 (v2.0), BSD, 或 MIT许可协议。我坚信应该鼓励企业都能够采用开源软件,让他们能够使用开源软件做他们想做的任何事情,在当前法律框架下尽可能的放宽限制。 宽松自由的软件许可协议能够使软件开发社区做的更好。自由的开源软件开发能鼓励真正的、专心的、有实力的参与者的奉献活动,就像“...原创 2010-12-04 13:30:16 · 94 阅读 · 0 评论 -
从3个科技公司里学到的57条经验
转:http://www.aqee.net/2010/11/22/57-things-ive-learned-founding-3-tech-companies/自1999年起我就开始发掘一些科技公司,并帮助它们运营。我最近的一个公司是fabulis.com。下面是从干这行中得到的57条经验。我可以列出更多,但恐怕会令你厌烦。1.做你个人有热情的事情。你是你自己最好的民意代表。2...原创 2010-12-04 13:31:42 · 132 阅读 · 0 评论 -
架构师给程序员的一封信
转:http://www.aqee.net/2010/12/01/from-an-architect-to-a-programmer/六个月前,当我们开始新项目时,我和我的团队里的每个人都收到了来自我们的架构师的一封邮件:每次当我开始做一个新项目时我都非常的兴奋。即使是在做了20年的软件开发后,我仍然感觉心里像揣了一个小兔子似的怦怦直跳。这将是我们共同的旅程。我深信我们正在绘制一份...原创 2010-12-04 13:35:58 · 89 阅读 · 0 评论 -
高效编程之欲擒故纵
转:http://www.aqee.net/2010/11/30/to-code-quickly-you-must-quit-coding/ 最有效的使用时间的方法可能会出乎你的意料昨天我做了一些事情使我的编程效率提高了一倍。简单,容易,但使我的生活发生了巨大的变化。你们中可能有些人已经知道我是怎么做的。对于其他的人,这听起来有些疯狂。我不持续工作。或者,我把定...原创 2010-12-04 13:36:58 · 77 阅读 · 0 评论 -
Servlet 3.0 实战:异步 Servlet 与 Comet 风格应用程序
转自http://www.ibm.com/developerworks/cn/java/j-lo-comet/概述作为 Java EE 6 体系中重要成员的 JSR 315 规范,将 Servlet API 最新的版本从 2.5 提升到了 3.0,这是近 10 年来 Servlet 版本号最大的一次升级,此次升级中引入了若干项令开发人员兴奋的特性,如:可插拔的 Web 架构(We...原创 2010-12-04 21:19:33 · 78 阅读 · 0 评论 -
Java的单线程Socket通信
package com.wangtong.network; import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.io.PrintWriter; import java.net....原创 2010-12-04 21:21:00 · 86 阅读 · 0 评论 -
Java的多线程Socket通信
转:http://wangtong40.iteye.com/blog/50633package com.wangtong.network; import java.io.BufferedReader; import java.io.IOException; import java.io.InputStream; import java.i...原创 2010-12-04 21:21:37 · 111 阅读 · 0 评论 -
少走弯路 Web开发网站制作十八条心得
WEB网站制作当中不可或少的会碰到各种问题,以下是开发时碰到的一些问题以及心得经验,避免大家少走弯路。 1、xml文件尽量以utf-8编码,gb2312有些字是存储不了的,如?,就算能存也需要转换,比较麻烦,utf-8也符合国际规范。 2、CSS中:hover这个伪类,如果放在:visited前面则会失效。 3、<a>标签如果没有href属性,所有对它的css的伪类如:ho...原创 2010-11-30 22:08:49 · 88 阅读 · 0 评论 -
Java开源的高性能缓存框架
OSCache OSCache是个一个广泛采用的高性能的J2EE缓存框架,OSCache能用于任何Java应用程序的普通的缓存解决方案。 OSCache有以下特点:缓存任何对象,你可以不受限制的缓存部分jsp页面或HTTP请求,任何java对象都可以缓存。拥有全面的API-- OSCache API给你全面的程序来控制所有的OSCache特性。永久缓存--缓存能随意的写入硬盘,因此允许昂贵的创建(...原创 2010-11-30 22:08:12 · 92 阅读 · 0 评论 -
java学习——NIO篇2
在前面写的nio学习中是采取的简单的demo,后来在网上看到一个demo,一个用来多线程下载的demo,在这个demo里才会体现nio的高性能之处。充分体现nio的优势。场景:一个服务端,然后100个客户端同时连接服务端,然后下载一个文件下来。服务端只需要一个连接来处理这些来自客户端的连接。其中对文件的传递采用的是nio中的FileChannel 。很好用的一个东西。 忘记从哪里转过来...原创 2010-11-27 10:21:10 · 71 阅读 · 0 评论 -
OSGi和Java企业级运算的未来方向
摘要: OSGi也是译者最近才接触到的技术,但是在OSGi的发展中,它越来越收到了来自行业的关注。作为OSGi的动态部署,译者认为此项规范对于企业应用应该是非常有帮助的。特别在银行的信息化建设中将会起到很重要的作用,因为国内大多的银行业都在强调7*24小时系统,但是其业务发展又非常迅速,常常有新需求,新变更。如果每一次上线变更都将重启系统的话,对银行的服务质量和形象将会造成较大的影响。 此...原创 2010-11-28 10:45:28 · 110 阅读 · 0 评论 -
四个流行的Java连接池
C3P0是一个开放源代码的JDBC连接池,它在lib目录中与Hibernate一起发布,包括了实现jdbc3和jdbc2扩展规范说明的Connection 和Statement 池的DataSources 对象。(主页:http://sourceforge.net/projects/c3p0/)BoneCP 是一个开源的快速的 JDBC 连接池。BoneCP很小,只有四十几K(运行时需要l...原创 2010-11-28 10:45:59 · 214 阅读 · 1 评论 -
版本管理器的发展史
以前本站发布过编程语言进化,Windows的达尔文进化图,今天在网上看到版本管理器的进化图,转过来,源文链接如下:http://codicesoftware.blogspot.com/2010/11/version-control-timeline.html (墙)这张图上分成了四个时期: 史前时期:1982年的RCS。现在你可能还能在Unix的发布包中找到它。古典时期...原创 2010-11-28 13:19:43 · 105 阅读 · 0 评论 -
Windows的达尔文进化图
之前发布过《操作系统图形界面发展史(1981-2009)》,今天在网上看到一张自于Testking.com的关于Windows的进化图,其从1985年的windows 1.0到2009年的windows 7的。挺有意思的。点击可以看大图。...原创 2010-11-28 13:31:27 · 181 阅读 · 0 评论 -
一些重要的算法
下面是一些比较重要的算法,原文罗列了32个,但我觉得有很多是数论里的,和计算机的不相干,所以没有选取。下面的这些,有的我们经常在用,有的基本不用。有的很常见,有的很偏。不过了解一下也是好事。也欢迎你留下你觉得有意义的算法。(注:本篇文章并非翻译,其中的算法描述大部份摘自Wikipedia,因为维基百科描述的很专业了)A*搜寻算法俗称A星算法。这是一种在图形平面上,有多个节点的路径,求出...原创 2010-11-28 13:37:05 · 68 阅读 · 0 评论