03 2013 档案

摘要:Java集合框架是最常被问到的Java面试问题,要理解Java技术强大特性,就有必要掌握集合框架。这里有一些实用问题,常在Java面试中问到。1、 什么是Java集合APIJava集合框架API是用来表示和操作集合的统一框架,它包含接口、实现类、以及帮助程序员完成一些编程的算法。简言之,API在上层完成以下几件事:● 编程更加省力,提高城程序速度和代码质量●非关联的API提高互操作性●节省学习使用新API成本●节省设计新API的时间●鼓励、促进软件重用具体来说,有6个集合接口,最基本的是Collection接口,由三个接口Set、List、SortedSet继承,另外两个接口是Map、Sort 阅读全文
posted @ 2013-03-30 21:11 踏刃而起 阅读(208) 评论(0) 推荐(0)
摘要:数据类型 Java虚拟机中,数据类型可以分为两类:基本类型和引用类型。基本类型的变量保存原始值,即:他代表的值就是数值本身;而引用类型的变量保存引用值。“引用值”代表了某个对象的引用,而不是对象本身,对象本身存放在这个引用值所表示的地址的位置。基本类型包括:byte,short,int,long,char,float,double,Boolean,returnAddress引用类型包括:类类型,接口类型和数组。堆与栈 堆和栈是程序运行的关键,很有必要把他们的关系说清楚。栈是运行时的单位,而堆是存储的单位。 栈解决程序的运行问题,即程序如何执行,或者说如何处理数据;堆解决的是数据存储的问题,即数 阅读全文
posted @ 2013-03-21 22:40 踏刃而起 阅读(176) 评论(0) 推荐(0)
摘要:1.Java集合框架图-集合接口:6个接口(短虚线表示),表示不同集合类型,是集合框架的基础。-抽象类:5个抽象类(长虚线表示),对集合接口的部分实现。可扩展为自定义集合类。-实现类:8个实现类(实线表示),对接口的具体实现。2.Java容器类介绍①Java容器类都可以自动地调整自己的尺寸。②Collection接口是一组允许重复的对象。③Set接口继承Collection,不允许重复,使用自己内部的一个排列机制。④List接口继承Collection,允许重复,以元素安插的次序来放置元素,不会重新排列。⑤ Map接口是一组成对的键-值对象,即所持有的是key-value pairs。Map中 阅读全文
posted @ 2013-03-20 11:57 踏刃而起 阅读(205) 评论(0) 推荐(0)
摘要:项目也做过几个, 使用IBatis就做一个项目, 基本上都是使用Hibernate, 也只是知道几点关于这两个框架的区别, 今天闲着没事干, 从网上找了几篇文章, 做了一个简单的整理。网上关于这两个框架的比较也很多, 只是自己想把别人的东西拿过来整理一下, IBatis和Hibernate的比较。(非原创)Hibernate VS iBATIS简介Hibernate是当前最流行的O/R mapping框架,当前版本是3.05。它出身于sf.net,现在已经成为Jboss的一部分了。iBATIS是另外一种优秀的O/R mapping框架,当前版本是2.0。目前属于apache的一个子项目了。相对 阅读全文
posted @ 2013-03-20 11:07 踏刃而起 阅读(358) 评论(0) 推荐(0)
摘要:虽然说没有系统的学习过Spring MVC框架, 但是工作这么长时间, 基本上在WEB层使用的都是Spring MVC, 自己觉得Struts2也是一个不错的WEB层框架, 这两种框架至今自己还未有比较, 今天闲着没事干, 从网上找了一些资料, 再加上平时使用Spring MVC的感触来总结一下。Spring MVCPKStruts2我们用struts2时采用的传统的配置文件的方式,并没有使用传说中的0配置。spring3 mvc可以认为已经100%零配置了(除了配置spring mvc-servlet.xml外)。Spring MVC和Struts2的区别:1. 机制:spring mvc的 阅读全文
posted @ 2013-03-20 11:06 踏刃而起 阅读(201) 评论(0) 推荐(0)
摘要:Alt+回车 导入包,自动修正Ctrl+N 查找类Ctrl+Shift+N 查找文件Ctrl+Alt+L 格式化代码Ctrl+Alt+O 优化导入的类和包Alt+Insert 生成代码(如get,set方法,构造函数等)Ctrl+E或者Alt+Shift+C 最近更改的代码Ctrl+R 替换文本Ctrl+F 查找文本Ctrl+Shift+Space 自动补全代码Ctrl+空格 代码提示Ctrl+Alt+Space 类名或接口名提示Ctrl+P 方法参数提示Ctrl+Shift+Alt+N 查找类中的方法或变量Alt+Shift+C 对比最近修改的代码Shift+F6 重构-重命名Ctrl+Sh 阅读全文
posted @ 2013-03-17 21:15 踏刃而起 阅读(175) 评论(0) 推荐(0)
摘要:Java数据挖掘包(JDMP)是一个开源的Java程序库,用于数据分析和机器学习。它能够促进对数据源和机器学习算法(如,聚类、回归、分类、图形模式和优化)的访问,并且提供了可视化模块。它包含一个用于存储和处理任何类型的数据矩阵库,能够处理非常大的矩阵,甚至当这些矩阵无法写入内存时它仍然能够处理。JDMP不仅提供了许多算法和工具,并且提供了与其他机器学习和数据挖掘包(Weka, LibSVM, Mallet, Lucene, Octave)之间的接口。JDMP主要的优点在于一致的数据表示。对于Linux来说,一切事物均是文件,而对于JDMP来说,一切事物均是矩阵!例如,可以将几个矩阵组合成一个变 阅读全文
posted @ 2013-03-14 19:56 踏刃而起 阅读(498) 评论(0) 推荐(0)
摘要:1.AbstractMap抽象类和SortedMap接口AbstractMap抽象类:覆盖了equals()和hashCode()方法以确保两个相等映射返回相同的哈希码。如果两个映射大小相等、包含同样的键且每个键在这两个映射中对应的值都相同,则这两个映射相等。映射的哈希码是映射元素哈希码的总和,其中每个元素是Map.Entry接口的一个实现。因此,不论映射内部顺序如何,两个相等映射会报告相同的哈希码。SortedMap接口:它用来保持键的有序顺序。SortedMap接口为映像的视图(子集),包括两个端点提供了访问方法。除了排序是作用于映射的键以外,处理SortedMap和处理SortedSet 阅读全文
posted @ 2013-03-11 21:32 踏刃而起 阅读(308) 评论(0) 推荐(0)
摘要:统计一篇给定的 文章中,各个单词出现的次数的算法。用HashMap 来存放出现的单词的次数,Key 是要统计的单词,Value 是单词出现的次数。最后再按照 Key 的升序排列出来。import java.util.*;import java.io.*;public class CountOccurrenceOfWords { public static void main(String[] args) throws Exception { Map hashMap = null; BufferedReader infile = null; StringTokenizer st = nul... 阅读全文
posted @ 2013-03-11 21:31 踏刃而起 阅读(544) 评论(0) 推荐(0)
摘要:几年前的老文了,现在看来有些唏嘘,特转:我现在是自己做,但我此前有多年在从事软件开发工作,当回过头来想一想自己,觉得特别想对那些初学JAVA/DOT。NET技术的朋友说点心里话,希望你们能从我们的体会中,多少受点启发(也许我说的不好,你不赞同但看在我真心的份上别扔砖头啊). 一。在中国你千万不要因为学习技术就可以换来稳定的生活和高的薪水待遇,你千万更不要认为哪些从事市场开发,跑腿的人,没有前途。 不知道你是不是知道,咱们中国有相当大的一部分软件公司,他们的软件开发团队都小的可怜,甚至只有1-3个人,连一个项目小组都算不上,而这样的团队却要承担一个软件公司所有的软件开发任务,在软件上线和开发.. 阅读全文
posted @ 2013-03-11 21:19 踏刃而起 阅读(124) 评论(0) 推荐(0)
摘要:异步IO的概念和同步IO相对。当一个异步过程调用发出后,调用者不能立刻得到结果。实际处理这个调用的部件在完成后,通过状态、通知和回调来通知调用者。异步IO将比特分成小组进行传送,小组可以是8位的1个字符或更长。发送方可以在任何时刻发送这些比特组,而接收方从不知道它们会在什么时候到达。异步传输存在一个潜在的问题,即接收方并不知道数据会在什么时候到达。在它检测到数据并做出响应之前,第一个比特已经过去了。这就像有人出乎意料地从后面走上来跟你说话,而你没来得及反应过来,漏掉了最前面的几个词。因此,每次异步传输的信息都以一个起始位开头,它通知接收方数据已经到达了,这就给了接收方响应、接收和缓存数据比特的 阅读全文
posted @ 2013-03-09 23:26 踏刃而起 阅读(159) 评论(0) 推荐(0)
摘要:SAX是一个用于处理XML事件驱动的“推”模型,虽然它不是W3C标准,但它却是一个得到了广泛认可的API。SAX解析器不像DOM那样建立一个完整的文档树,而是在读取文档时激活一系列事件,这些事件被推给事件处理器,然后由事件处理器提供对文档内容的访问。常见的事件处理器有三种基本类型:● 用于访问XML DTD内容的DTDHandler;● 用于低级访问解析错误的ErrorHandler;● 用于访问文档内容的ContentHandler,这也是最普遍使用的事件处理器。图 2显示了SAX解析器如何通过一个回调机制报告事件。解析器读取输入文档并在处理文档时将每个事件推给文档处理器(MyContent 阅读全文
posted @ 2013-03-09 23:25 踏刃而起 阅读(226) 评论(0) 推荐(0)
摘要:RMI是Java的一组拥护开发分布式应用程序的API。RMI使用Java语言接口定义了远程对象,它集合了Java序列化和Java远程方法协议(Java Remote Method Protocol)。简单地说,这样使原先的程序在同一操作系统的方法调用,变成了不同操作系统之间程序的方法调用,由于J2EE是分布式程序平台,它一RMI机制实现程序组件在不同操作系统之间的通信。比如,一个EJB可以通过RMI调用Web上另一台机器上的EJB远程方法。RMI(Remote Method Invocation,远程方法调用)是用Java在JDK1.1中实现的,它大大增强了Java开发分布式应用的能力。Jav 阅读全文
posted @ 2013-03-09 22:49 踏刃而起 阅读(328) 评论(0) 推荐(0)
摘要:Jabber 是著名的Linux即时通讯服务服务器,它是一个自由开源软件,能让用户自己架即时通讯服务器,可以在Internet上应用,也可以在局域网中应用。Jabber最有优势的就是其通信协议,可以和多种即时通讯对接。Jabber有第三方插件,能让Jabber用户和MSN、YahooMessager、ICQ等IM用户相互通讯。因为Google遵从Jabber协议,并且Google已经将Gtalk的服务器开放给了其它的Jabber服务器。所以PSI、Giam等Jabber客户端软件支持GTalk用户登陆。XMPP(可扩展消息处理现场协议)是基于可扩展标记语言(XML)的协议,它用于即时消息(IM 阅读全文
posted @ 2013-03-09 22:43 踏刃而起 阅读(185) 评论(0) 推荐(0)
摘要:XMPP是一种基于XML的协议,它继承了在XML环境中灵活的发展性。因此,基于XMPP的应用具有超强的可扩展性。经过扩展以后的XMPP可以通过发送扩展的信息来处理用户的需求,以及在XMPP的顶端建立如内容发布系统和基于地址的服务等应用程 序。而且,XMPP包含了针对服务器端的软件协议,使之能与另一个进行通话,这使得开发者更容易建立客户应用程序或给一个配好系统添加功能。定义XMPP : The Extensible Messaging and Presence Protocol中文全称:可扩展通讯和表示协议简介:可扩展通讯和表示协议 (XMPP) 可用于服务类实时通讯、表示和需求响应服务中的XM 阅读全文
posted @ 2013-03-09 22:40 踏刃而起 阅读(191) 评论(0) 推荐(0)
摘要:LDAP简介简单的说来,LDAP是一个得到关于人或者资源的集中、静态数据的快速方式。LDAP是一个用来发布目录信息到许多不同资源的协议。通常它都作为一个集中的地址本使用,不过根据组织者的需要,它可以做得更加强大。LDAP的实质LDAP其实是一个电话簿,类似于我们所使用诸如NIS(Network Information Service)、DNS (Domain Name Service)等网络目录,也类似于你在花园中所看到的树木。不少LDAP开发人员喜欢把LDAP与关系数据库相比,认为是另一种的存贮方式,然后在读性能上进行比较。实际上,这种对比的基础是错误的。LDAP和关系数据库是两种不同层次的 阅读全文
posted @ 2013-03-09 22:37 踏刃而起 阅读(387) 评论(0) 推荐(0)
摘要:JAXB 2.0是JDK 1.6的组成部分。JAXB 2.2.3是JDK 1.7的组成部分。JDK中JAXB相关的重要Class和Interface:JAXBContext类,是应用的入口,用于管理XML/Java绑定信息。Marshaller接口,将Java对象序列化为XML数据。Unmarshaller接口,将XML数据反序列化为Java对象。JDK中JAXB相关的重要Annotation:@XmlType,将Java类或枚举类型映射到XML模式类型@XmlAccessorType(XmlAccessType.FIELD) ,控制字段或属性的序列化。FIELD表示JAXB将自动绑定Java 阅读全文
posted @ 2013-03-09 22:29 踏刃而起 阅读(261) 评论(0) 推荐(0)
摘要:XMLBeans是一个XML-Java绑定工具,利用它可以很方便地解析XML文档。XMLBeans的最新版本2.6.0(2012/08/14),支持XML DOM。XMLBeans 1.0.3最强大的功能之一是可通过提供配置文件定制代码生成。在灵活性、可重用性、简化代码和维护方面,XMLBeans的功能带来了许多益处。因为任何企业应用程序相当大部分的成本都在于维护方面,所以从长远来看,XMLBeans的配置功能能够代表对成本和时间的节省。本文通过一系列的示例对这些功能进行了说明。我们假设您已熟悉XMLBeans。对于入门者,参见下面列出的介绍XMLBeans的文章。本文中提及的示例代码和其他文 阅读全文
posted @ 2013-03-09 22:27 踏刃而起 阅读(269) 评论(0) 推荐(0)