J2SE学习笔记
杰锋
这个作者很懒,什么都没留下…
展开
-
linux 安装 Jdk 1.6.45
1 说明 环境:redhat Enterprise Linux Server5.3-x64。 版本:jdk 1.6.0_45。2 安装步骤 2.1 下载地址 http://www.oracle.com/technetwork/java/javasebusiness/downloads/java-archive-downloads-javase6-419409.htm转载 2014-04-02 15:00:01 · 3259 阅读 · 0 评论 -
使用JavaMail接收邮件
package demo;import java.io.File;import java.io.FileOutputStream;import java.io.InputStream;import java.util.Properties;import javax.mail.BodyPart;import javax.mail.Folder;import jav转载 2011-12-15 00:42:01 · 574 阅读 · 0 评论 -
使用JavaMail发送邮件
package demo;import java.util.Properties;import javax.activation.DataHandler;import javax.activation.DataSource;import javax.activation.FileDataSource;import javax.mail.BodyPart;import转载 2011-12-15 00:40:27 · 355 阅读 · 0 评论 -
安装企业级邮件服务器Apache James
主页地址:http://james.apache.org/download.cgi 下载James Binary Zip文件解压后运行bin目录下run.bat文件,启动James。如果不能正常运行,则可能由于stmp(25),pop(110)等端口被占,可用telnet命令检查。我们可以手动更改各个端口号。在安装目录/apps/james/SAR-INF下,按如下修改config文件转载 2011-12-15 00:39:17 · 491 阅读 · 0 评论 -
发布一个Java写的俄罗斯方块源码 算法简单(300行) 注释详细
转自:http://topic.csdn.net/u/20100612/03/A8D7B257-4385-4BB8-82FF-4A51AC3BD810.htmlimport java.awt.*;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import java.awt.event.K转载 2011-12-14 02:05:26 · 1548 阅读 · 0 评论 -
Java设计模式-----Factory Method模式
源自:http://www.blogjava.net/flustar/archive/2007/11/29/factoryMethod.htmlFactory Method模式:定义一个用于创建对象的接口,让子类决定实例化哪一个类。FactoryMethod使一个类的实例化延迟到其子类。例子:public abstract class Ball { protected abs转载 2011-12-15 01:12:59 · 245 阅读 · 0 评论 -
Java设计模式-----Abstract Factory抽象工厂模式
源自:http://www.blogjava.net/flustar/archive/2007/11/28/abstractFactory.htmlAbstract Factory抽象工厂模式:为创建一组相关或相互依赖的对象提供一个接口,而且无需指定它们的具体类。大致意思是说:我们在创建这些对象的时候,并不需要指定它们的具体类,这些具体类的对象是由工厂对象负责实例化的。例子:pub转载 2011-12-15 01:00:23 · 301 阅读 · 0 评论 -
Java设计模式-----Bridge桥接模式
源自:http://www.blogjava.net/flustar/archive/2007/11/28/bridge.htmlBridge桥接模式:将抽象与其实现解耦,使它们都可以独立地变化。大致意思是说:将一组实现与另一组使用他们的对象分离。这里的实现指的是抽象类及其派生类用来实现自己的对象(而不是抽象类的派生类,这些派生类被称为具体类)。例子:public abstract转载 2011-12-15 00:59:48 · 1235 阅读 · 0 评论 -
Java设计模式-----Adapter适配器模式
Adapter适配器模式:将一个类的接口转换成客户希望的另外一个接口。Adapter模式使原本由于接口不兼容而不能一起工作的类可以一起工作。public interface Shape { public void display();}public class XXCircle { public void displayCircle()转载 2011-12-15 00:58:40 · 387 阅读 · 0 评论 -
使用Java取得汉字的拼音首字母
下面的方法是从网上找来的,感觉蛮有用的(譬如可以结合ajax技术,通过汉语拼音查找汉字)。不过如下方法,很多汉字都不能给出正解(譬如"鑫茂花园"的"鑫")。想想也是,中文多音字就有不少的。package sample;public class GB2Alpha ...{ //字母Z使用了两个标签,这里有27个值 //i, u, v都不做声母, 跟随前面的字母转载 2011-12-15 00:43:09 · 541 阅读 · 0 评论 -
Java设计模式-----Iterator迭代器模式
Iterator模式定义:提供一个方法顺序访问一个聚合对象的各个元素,而又不暴露该对象的内部表示。这个模式在java的类库中已经实现了,在java中所有的集合类都实现了Conllection接口,而Conllection接口又继承了Iterable接口,该接口有一个iterator方法,也就是所以的集合类都可以通过这个iterator方法来转换成Iterator类,用Iterator对象中转载 2011-12-15 01:16:41 · 534 阅读 · 0 评论 -
Java设计模式-----Singleton模式
源自:http://www.blogjava.net/flustar/archive/2007/11/28/singleton.htmlSingleton模式 :保证一个类只有一个实例,并提供一个访问它的全局访问点。以下分别给出单线程模式和多线程模式下的2种单例模式的写法。在多线程模式下,因为静态的内部类Instance只会被装载一次,所以能够实现单例的效果。例子://单线程模转载 2011-12-15 01:11:30 · 284 阅读 · 0 评论 -
Java设计模式-----Observer观察者模式
源自:http://www.blogjava.net/flustar/archive/2007/11/28/observer.htmlObserver观察者模式:定义对象间的一种一对多的依赖关系,当一个对象的状态发生改变时,所有依赖于它的对象都将得到通知并自动更新。例子:public interface Observer { public void update(Childr转载 2011-12-15 01:01:20 · 284 阅读 · 0 评论 -
使用commons-email发邮件
官网下载:http://commons.apache.org/email/commons-email是apache提供的一个开源的API,是对javamail的封装,使用时要将javamail.jar和activation.jar加到class path中,主要包括SimpleEmail,MultiPartEmail,HtmlEmail,EmailAttachment四个类。 Simple转载 2011-12-15 00:38:12 · 764 阅读 · 0 评论 -
java中使用json对页面元素赋值
关于json的笔记,写得有点乱,下次有时间我再整理一下。var myFirstJSON = ...{ "firstName" : "John", "lastName" : "Doe", "ag转载 2011-12-15 00:35:05 · 2854 阅读 · 0 评论 -
JAVA读XML:sax,dom,jdom,dom4j的比较以及选择
SAX: SAX分析器在对XML文档进行分析时,触发一系列的事件 ,应用程序通过事件处理函数实现对XML文档的访问。由于事件触发本身是有时序性的,因转载 2011-12-14 02:30:18 · 437 阅读 · 0 评论 -
Java设计模式-----Strategy策略模式
Strategy策略模式:定义一系列的算法,把他们一个个封装起来,并且使它们可相互替换。Strategy模式使算法可独立于使用它的客户而变化。Strategy模式以下列几条原则为基础:1) 每个对象都是一个具有职责的个体。2) 这些职责不同的具体实现是通过多态的使用来完成的。3) 概念上相同的算法具有多个不同的实现,需要进行管理。例子:public interface转载 2011-12-15 00:57:45 · 443 阅读 · 0 评论 -
Java设计模式-----Template Method模式
源自:http://www.blogjava.net/flustar/archive/2007/11/28/templateMethod.htmlTemplate Method模式:定义一个操作中算法的骨架,而将一些步骤延迟到子类中。不改变算法的结构而重新定义它的步骤。例子:public abstract class QueryTemplate { public void转载 2011-12-15 01:12:27 · 241 阅读 · 0 评论 -
Java设计模式-----Builder建造者模式
Builder模式定义:将一个复杂对象的构建与它的表示分离,使得同样的构建过程可以创建不同的表示。刚接触到这个模式的时候,实在搞不明白它的意思,有什么用。于是,上网google了一圈,终于得到这个大家普遍认可的解释:建造模式是一步一步创建一个复杂的对象,它允许用户可以只通过指定复杂对象的类型和内容就可以构建它们,用户不知道内部的具体构建细节。下面举一个例子来说明这个模式的使用,代码转载 2011-12-15 01:14:51 · 262 阅读 · 0 评论 -
java加密解密研究
java加密解密研究1、密码学的基本分类java加密解密研究2、Bouncy Castle和Commons Codec加密组件java加密解密研究3、Base64算法java加密解密研究4、UrlBase64算法java加密解密研究5、消息摘要算法简介java加密解密研究6、MD算法家族转载 2014-07-19 15:25:54 · 795 阅读 · 0 评论 -
Java 虚拟机体系结构
众所周知,Java源代码被编译器编译成class文件。而并不是底层操作系统可以直接执行的二进制指令(比如Windows OS的.exe文件)。因此,我们需要有一种平台可以解释class文件并运行它。而做到这一点的正是Java 虚拟机(JVM)。 实际上,JVM是一种解释执行class文件的规范技术。各个提 供商都可以根据规范,在不同的底层平台上实现不同的JVM。 下面是JV转载 2013-08-19 00:41:55 · 503 阅读 · 0 评论 -
JVM加载class文件的原理
当Java编译器编译好.class文件之后,我们需要使用JVM来运行这个class文件。那么最开始的工作就是要把字节码从磁盘输入到内存中,这个过程我们叫做【加载】。加载完成之后,我们就可以进行一系列的运行前准备工作了,比如: 为类静态变量开辟空间,将常量池存放在方法区内存中并实现常量池地址解析,初始化类静态变量等等。这篇文章我们要好好谈谈JVM是如何加载class文件的? 1、JVM加转载 2013-08-19 00:46:09 · 471 阅读 · 0 评论 -
GC工作原理
Java的内存管理实际上就是对象的管理,其中包括对象的分配和释 放。 对于程序员来说,分配对象使用new关键字;释放对象时,只要将对象所有引用赋值为null,让程序不能够再访问到这个对象,我们 称该对象为"不可达的".GC将负责回收所有"不可达"对象的内存空间。 对于GC来说,当程序员创建对象时,GC就开始监控这个对象的 地址、大小以及使用情况。通常,GC采用有向图的方式记录和转载 2013-08-19 00:33:45 · 500 阅读 · 0 评论 -
【java并发】juc高级锁机制探讨
最近在看一些juc相关的设计和源码,接上文 :【java并发】基于JUC CAS原理,自己实现简单独占锁本文探讨一下juc里面提供的一些高级锁机制和基本原理。 JUC高级锁机制简介Juc 提供了高级锁的一些特性和应用,如: ReentrantLock :和 synchronized 具有差不多的语义,独占锁,同时只有一个线程能获得锁。 ReentrantReadWri转载 2013-08-19 00:23:56 · 620 阅读 · 0 评论 -
java设计模式示例
创建模式1.工厂方法模式(Factory Method) 将程序中创建对象的操作,单独出来处理,创建一个产品的工厂接口,把实际的工作转移到具体的子类。大大提高了系统扩展的柔性,接口的抽象化处理给相互依赖的对象创建提供了最好的抽象模式。[java] view plaincopyprint?public class TestFactoryMethod {转载 2013-08-19 01:00:53 · 497 阅读 · 0 评论 -
揭开Socket编程的面纱
对TCP/IP、UDP、Socket编程这些词你不会很陌生吧?随着网络技术的发展,这些词充斥着我们的耳朵。那么我想问:1. 什么是TCP/IP、UDP?2. Socket在哪里呢?3. Socket是什么呢?4. 你会使用它们吗?什么是TCP/IP、UDP? TCP/IP(Trans转载 2013-08-23 11:26:41 · 466 阅读 · 0 评论 -
Java中HashMap遍历的两种方式
第一种: Map map = new HashMap(); Iterator iter = map.entrySet().iterator(); while (iter.hasNext()) { Map.Entry entry = (Map.Entry) iter.next(); Object key = entry.getKey(); Object val =转载 2013-08-19 00:30:32 · 392 阅读 · 0 评论 -
【java并发】juc Executor框架详解
Executor 框架是 juc 里提供的线程池的实现。前两天看了下Executor 框架的一些源码,做个简单的总结。 线程池大概的思路是维护一个的线程池用于执行提交的任务。我理解池的技术的主要意义有两个: 1. 资源的控制,如并发量限制。像连接池这种是对数据库资源的保护。 2. 资源的有效利用,如线程复用,避免频繁创建线程和线程上下文切换。 那么想象中设计一个线程池就需要转载 2013-08-19 00:27:53 · 595 阅读 · 0 评论 -
【java并发】基于JUC CAS原理,自己实现简单独占锁
synchronized的基本原理回顾在jvm内部,所有对象都含有单一的锁,jvm负责跟踪监视被加锁次数,叫做对象监视器。当线程第一次给对象加锁的时候,计数器会加1,离开时会减1.同样任务是可重入的,每次重入也是加1,离开减1. synchronized是独占式的,拿到对象锁才能继续,没有获取到锁就会阻塞。JUC CAS乐观锁基本原理synchronized就是一种独占锁,会导转载 2013-08-19 00:21:49 · 874 阅读 · 0 评论 -
MyEclipse 5.5.1 GA 注册机
最近恢复系统,MyEclipse 变回 5.5.1 版本,注册码已经不可用,网上下载的注册机基本上都不可以用,故找了个程序生成,测试成功。package com.util;import java.io.*; public class MyEclipseGen { private static final String LL = "Decompiling this原创 2012-01-05 23:33:00 · 1066 阅读 · 0 评论 -
POI 样例
使用这套API操作Excel时,将对Excel进行全程锁定,所以不能有其他程序访问同一文件.package poi; import java.io.FileOutputStream;import java.util.Calendar;import java.util.Date; import org.apache.poi.hssf.usermodel.HSSFCell;转载 2012-01-10 20:40:48 · 514 阅读 · 0 评论 -
java读sftp
package com.ikea.utils;import java.io.File;import java.io.FileInputStream;import java.io.FileOutputStream;import java.util.Properties;import java.util.Vector;import com.jcraft.jsch.Cha转载 2011-12-28 23:22:22 · 1485 阅读 · 1 评论 -
用 Java 实现断点续传 (HTTP)
断点续传的原理其实断点续传的原理很简单,就是在 Http 的请求上和一般的下载有所不同而已。 打个比方,浏览器请求服务器上的一个文时,所发出的请求如下: 假设服务器域名为 wwww.sjtu.edu.cn,文件名为 down.zip。 GET /down.zip HTTP/1.1 Accept: image/gif, image/x-xbitmap, image/jpeg, i转载 2011-12-28 23:27:03 · 515 阅读 · 0 评论 -
dao 设计源码
IBaseDao.java文件:package lym.dao.base.hibernate; import java.io.Serializable; import java.util.Collection; import java.util.List; import lym.dao.obj.AbstractHandleObj;转载 2010-09-14 16:44:00 · 456 阅读 · 0 评论 -
Java设计模式-----Prototype原型模式
源自:http://www.blogjava.net/flustar/archive/2007/12/02/prototype.htmlPrototype原型模式:通过给出一个原型对象来指明所要创建的对象类型,然后用复制这个原型对象的办法创建出更多的同类型对象。 在java的类库中已经实现了这一模式,只要你定义的类实现了Cloneable接口,用这个类所创建的对象可以做为原型对象进而克转载 2011-12-15 01:13:30 · 346 阅读 · 0 评论 -
Java设计模式-----Decorator装饰模式
源自:http://www.blogjava.net/flustar/archive/2007/11/28/decorator.htmlDecorator装饰模式:动态地给一个对象添加一些额外的职责。就增加功能来说,Decorator模式比生成子类更为灵活。也就是说:动态地给对象添加一些额外的功能。它的工作原理是:创建一个始于Decorator对象(负责新功能的对象)终止于原对象的一个转载 2011-12-15 01:00:50 · 280 阅读 · 0 评论 -
Java设计模式-----Facade外观模式
Facade外观模式:为子系统中的一组接口提供一个统一接口。Facade模式定义了一个更高层的接口,使子系统更加容易使用。例子:1.DrawerOne.java public class DrawerOne { public void open() { System.out.println("第一个抽屉被打开了"); get转载 2011-12-15 00:56:08 · 274 阅读 · 0 评论 -
详解JAVA POI导出EXCEL报表的操作(包括各种格式及样式的实现)
<br />一、工具类 /** * EXCEL报表工具类. * * @author caoyb * @version $Revision:$ */ public class ExportExcel { private HSSFWorkbook wb = null; private HSSFSheet sheet = null; /** * @param wb * @param sheet */ public ExportExcel(HSSF转载 2010-09-14 16:46:00 · 3935 阅读 · 1 评论 -
Java读取properties文件
Java读取properties文件的方法比较多,网上我最多的文章是“Java读取properties文件的六种方法”,但在Java应用中,最常用还是通过java.lang.Class类的getResourceAsStream(String name) 方法来实现,但我见到众多读取properties文件的代码中,都会这么干: InputStream in = getClass().getResourceAsStream("资源Name"); 这里面有个问题,就是getClass()调用的时候默认省略了th转载 2010-08-27 16:58:00 · 661 阅读 · 0 评论 -
Java中for循环中执行顺序问题及break, continue用法
<br />1. for循环的一个问题<br />Java代码<br />for(int i=1, j=i+10 ; i<5; i++ , j=i*2) <br />System.out.println("i="+i+" j="+j); <br /> <br />for(int i=1, j=i+10 ; i<5; i++ , j=i*2)<br />System.out.println("i="+i+" j="+j);<br /> <br />运行结果:<br />i=1 j=11 <br />i=转载 2010-08-12 18:28:00 · 1070 阅读 · 0 评论