JavaSE
文章平均质量分 90
hoojo
一直被模仿,从未被超越!
展开
-
设计模式之Observer
观察者模式可以参考邮件订阅的例子邮件订阅设计到2个主要角色,一个是订阅者(观察者),一个是发布者 发布者可以拥有一个观察者的集合,可以添加,删除观察者,当发布者发布一个新的消息时,要邮件通知观察者集合中的每一个。所以,发布者实现的接口至少应具备三个方法,即注册观察者,注销观察者,通知观察者。 通知有两种方式,一种是推(push),一种是拉(pull).推,即发布者通过调转载 2010-04-18 11:39:00 · 1622 阅读 · 0 评论 -
Java Thread 多线程 介绍
线程的概述 线程和进程 进程的特征 并发和并行 多线程的优势 1、 线程概述 几乎所有的操作系统都支持同时运行多个任务,一个任务通常就是一个程序,每个运行中的程序就是一个进程。当一个程序运行时,内部可能包含了多个顺序执行流,每个顺序执行流就是一个线程。 2、 线程和进程 几乎所有的操作系统都有进程的概念,所有运行中的任务通常对应一条进程。当一个程序进入内存运行,就是一个进程了。进程是处于运行中的程序,具有一定的独立能力,进程是系统进行资源分配和调度的一个独立单位。原创 2011-05-05 08:53:00 · 1754 阅读 · 0 评论 -
Java Thread 多线程 操作线程
创建、启动线程 线程的实现方式 线程的生命周期 线程的状态 控制线程 5、线程的创建和启动 A、继承Thread类或实现Runnable接口,重写或实现run方法,run方法代表线程要完成的任务 B、创建Thread子类或是Runnable的实现类,即创建的线程对象;不同的是接口实现线程, 需要将接口的实现类作为参数传递给Thread类的构造参数原创 2011-05-05 09:10:00 · 1369 阅读 · 0 评论 -
Java Thread 线程同步、锁
线程同步、同步锁、死锁 线程通信 线程组和未处理异常 Callable和Future 12、线程同步 当多个线程访问同一个数据时,非常容易出现线程安全问题。这时候就需要用线程同步 Case:银行取钱问题,有以下步骤: A、用户输入账户、密码,系统判断是否登录成功 B、用户输入取款金额 C、系统判断取款金额是否大于现有金额原创 2011-05-05 09:32:00 · 2029 阅读 · 0 评论 -
Java Thread 多线程 线程池
线程池 线程相关类、集合 16、线程池 Why? 系统启动一个新线程的成本比较高,因为涉及到与操作系统交互。这个时候用线程池可以很好的提高性能, 尤其是当程序中需要创建大量生存期很短暂的线程时,更应该考虑使用线程池。 原理:(流程)线程池和数据库连接池有点类似的是,线程池在系统启动时创建大量空闲线程,程序将一个Runnable对象传给线程池, 线程池就会启动一条线程来执行该原创 2011-05-05 09:51:00 · 1546 阅读 · 0 评论 -
Java IO 理论笔记
1、Java IO 流 io是java中实现输入输出的基础,它可以很方便的完成数据的输入输出操作,Java把不同的输入输出抽象为流,通过流的方式允许Java程序使用相同的方式来访问不同的输入、输出。 2、流的分类 输入流、输出流 A、输入流:只能从中读取数据,而不能向里面写数据 B、 输出流:只能向里面写数据,而不能读数据 可以这样理解,数据从内存到硬盘,通常认为是输出流,即写操作;相反,从硬盘到内存,通常认为是输入流,即读操作;这里的输入、输出是从内存的角度划分的。 Java的输入流主要有I原创 2011-05-09 03:14:00 · 1507 阅读 · 0 评论 -
Jdom 操作XML
可扩展标记语言——eXtensible Markup Language用户可以自己定义语言标记,只要有开始和闭合标签即可。 xsl装饰、修饰xml的显示结果。 dtd约束xml文件中的标记。 Ø XML的优点: 1、xml可以让数据和标记分离。原创 2011-08-11 11:50:05 · 1966 阅读 · 0 评论 -
Dom4j 操作XML
Dom4j也可以很方便完成XML文档的创建、元素的修改、文档的查询遍历等,但dom4j稍比jdom复杂一点,不过在大片文档的情况下dom4j的性能要不jdom好。 # 准备首先,提供相关的jar包Dom4jjar包下载:http://sourceforge.原创 2011-08-11 16:05:58 · 3592 阅读 · 0 评论 -
Java 多线程断点下载文件
基本原理:利用URLConnection获取要下载文件的长度、头部等相关信息,并设置响应的头部信息。并且通过URLConnection获取输入流,将文件分成指定的块,每一块单独开辟一个线程完成数据的读取、写入。通过输入流读取下载文件的信息,然后将读取的信息用RandomAcces原创 2011-09-30 18:34:34 · 2848 阅读 · 2 评论 -
Solr开发文档
Solr 是一种可供企业使用的、基于 Lucene 的搜索服务器,它支持层面搜索、命中醒目显示和多种输出格式。在这篇文章中,将介绍 Solr 并展示如何轻松地将其表现优异的全文本搜索功能加入到 Web 应用程序中。 开发环境:System:WindowsWebBrowser:IE6+、Firefox3+JDK:1.6+JavaEE Server:tomcat5.0.2.8、原创 2011-10-21 17:13:56 · 5293 阅读 · 0 评论 -
缩放图片工具类,创建缩略图、伸缩图片比例
支持将Image的宽度、高度缩放到指定width、height,并保存在指定目录通过目标对象的大小和标准(指定)大小计算出图片缩小的比例可以设置图片缩放质量,并且可以根据指定的宽高缩放图片package com.iflashbuy.util;import java.awt.Image;import java.awt.image.BufferedImage;import java原创 2012-02-08 14:03:01 · 1946 阅读 · 0 评论 -
分享文件上传工具类
最近在搭建一个项目,需要用到很多通用的工具类,自己也写了几个。现在分享一下,也方便自己以后使用。如果你觉得不错的话,也欢迎转载。blog http://blog.csdn.net/IBM_hoojohttp://hoojo.cnblogs.comhttp://hoojo.blogjava.netemail hoojo_@126.com文件上传状态枚举类:原创 2012-02-10 14:21:41 · 2203 阅读 · 1 评论 -
Smack 结合 Openfire服务器,建立IM通信,发送聊天消息
在文章开始,请你了解和熟悉openfire方面的相关知识,这样对你理解下面代码以及下面代码的用途有很好的了解。同时,你可能需要安装一个简单的CS聊天工具,来测试你的代码是否成功的在openfire服务器上建立会话链接,并成功的向在线用户发送聊天消息。必须了解:http://www.cnblogs.com/hoojo/archive/2012/05/17/2506769.htmlhttp:/原创 2012-06-25 17:47:27 · 5591 阅读 · 0 评论 -
JavaScript/jQuery、HTML、CSS 构建 Web IM 远程及时聊天通信程序
这篇文章主要介绍用JavaScript和jQuery、HTML、CSS以及用第三方聊天JavaScript(jsjac)框架构建一个BS Web的聊天应用程序。此程序可以和所有连接到Openfire服务器的应用进行通信、发送消息。如果要运行本程序还需要一个聊天服务器Openfire,以及需要用到Http方式和Openfire通信的第三方库(JabberHTTPBind)。JabberHTT原创 2012-08-13 09:56:21 · 37621 阅读 · 344 评论 -
处理 Oracle SQL in 超过1000 的解决方案
处理oracle sql 语句in子句中(where id in (1, 2, ..., 1000, 1001)),如果子句中超过1000项就会报错。这主要是oracle考虑性能问题做的限制。如果要解决次问题,可以用 where id (1, 2, ..., 1000) or id (1001, ...)/** * function: 处理oracle sql 语句in子句中(where原创 2012-08-31 14:58:17 · 4094 阅读 · 0 评论 -
SpringMVC 中整合JSON、XML视图一
SpringMVC中整合了JSON、XML的视图,可以通过这些视图完成Java对象到XML、JSON的转换。转换XML提供了MarshallingView,开发者只需用注入相应的marshaller、和属性配置,即可自动完成Java的Model对象中的数据到XML的编组。 Email:hoojo_@126.com Blog:http://blog.csdn.net/IBM_hoojo http://hoojo.cnblogs.com/ 一、 准备工作 1、 本次程序会涉及到Jackson、xStr原创 2011-04-29 03:32:00 · 4343 阅读 · 0 评论 -
SpringMVC 中整合JSON、XML视图二
上篇文章介绍了程序整合的准备工作、结合MarshallingView视图完成jaxb2转换XML、xStream转换XML工作,这次将介绍castor、jibx转换XML。 还有MappingJacksonView用Jackson转换JSON,自己拓展AbstractView定义Jsonlib的视图完成JSON-lib转换JSON。 上一篇文章:http://www.cnblogs.com/hoojo/archive/2011/04/29/2032571.html 四、 用Castor转换XML原创 2011-04-29 04:44:00 · 2476 阅读 · 0 评论 -
Java实现观察者模式
观察者模式简介:定义:定义对象间的一对多的依赖关系,当一个对象的状态改变时,所有依赖于它的对象都得到通知并被自动更新。原理:由四部分组成抽象目标类,具体目标类,抽象观察者类,具体观察者类 Subject .javapublic interface Subject{ void attach(Observer observer);//添加观察者转载 2010-04-18 11:48:00 · 1553 阅读 · 0 评论 -
根据文件内容前几个字节,判断文件类型
用文件头判断。直接读取文件的前几个字节。常用文件的文件头如下:JPEG (jpg),文件头:FFD8FF PNG (png),文件头:89504E47 GIF (gif),文件头:47494638 TIFF (tif),文件头:49492A00 Windows Bitmap (bmp),文件头:424D CAD (dwg),文件头:41433130转载 2010-04-30 14:13:00 · 3461 阅读 · 1 评论 -
java 屏幕截图 工具类
java 屏幕截图工具类,可以截取当前屏幕画面。保存图片格式支持jpg、png这2中格式,提供main函数测试。此类需要用到的地方很广,比如在CS系统中可以完成截图功能。相当于操作系统的截图功能,图片可以保存在本地文件夹下。在BS中,可以截图后显示在浏览器中,路径可以自己填写。在本公司项目中,这个类主要用作捕捉错误页面信息。如果程序出现异常就会自动截图,这个时候就可以看到错误的画面。可以看到用户在输入什么信息的情况下程序出错了。public static void error(Object messag原创 2010-06-30 14:10:00 · 3408 阅读 · 3 评论 -
观察者模式-示例
class UserEvent { Object source; public UserEvent(Object source) {this.source = source;} public Object getSource() {return source;}}interface UserEventListener { void perform转载 2010-05-10 13:19:00 · 1219 阅读 · 0 评论 -
将util.Date转换为大写(农历)时间
最近公司做的项目需要为客户导出word,客户需要大写的日期格式。没有办法,在网上找了一篇文章可以转换日期格式的方法。package base.datetime;import java.util.Calendar;import java.util.Date;/***********************************************************转载 2010-05-27 13:14:00 · 1726 阅读 · 0 评论 -
java io 流,批量读写文件
用 java.io.BufferedReader; java.io.BufferedWriter; java.io.FileReader; java.io.FileWriter;批量读写文件原创 2010-06-04 13:58:00 · 4633 阅读 · 2 评论 -
Java web 开发: 随机生成验证码,支持大小写字母、数字;随机字体
java随机产生验证码,可以随机生成数字、大写字母、小写字母。还可以随机生成文字字体、及大小。在图片上面可能字体都不不同、大小不等。package com.hoo.util;import java.awt.Color;import java.awt.Font;import java.awt.Graphics;import java.awt.image.BufferedImage;import java.util.Random;import javax.imagei原创 2010-08-24 13:48:00 · 5603 阅读 · 3 评论 -
Java JDBC 理论笔记
Blog:http://hoojo.cnblogs.com email: hoojo_@126.com 一、JDBC常用接口、类介绍 JDBC提供对独立于数据库统一的API,用以执行SQL命令。API常用的类、接口如下: DriverManager 管理JDBC驱动的服务类,主要通过它获取Connection数据库链接,常用方法如下: public原创 2011-06-10 06:36:00 · 2048 阅读 · 2 评论 -
JSON-lib框架,转换JSON、XML不再困难
Json-lib可以将Java对象转成json格式的字符串,也可以将Java对象转换成xml格式的文档,同样可以将json字符串转换成Java对象或是将xml字符串转换成Java对象。 一、 准备工作 1、 首先要去官方下载json-lib工具包 下载地址: http://sourceforge.net/projects/json-lib/files/json-lib/json-lib-2.4/ 目前最新的是2.4的版本,本示例中使用的是v2.3;json-lib还需要以下依赖包: ja原创 2011-04-21 09:16:00 · 7001 阅读 · 2 评论 -
Jackson 框架,轻易转换JSON
Jackson可以轻松的将Java对象转换成json对象和xml文档,同样也可以将json、xml转换成Java对象。 前面有介绍过json-lib这个框架,在线博文:http://www.cnblogs.com/hoojo/archive/2011/04/21/2023805.html 相比json-lib框架,Jackson所依赖的jar包较少,简单易用并且性能也要相对高些。而且Jackson社区相对比较活跃,更新速度也比较快。 一、准备工作 1、 下载依赖库jar包 Jackson的jar原创 2011-04-22 02:42:00 · 8669 阅读 · 1 评论 -
Castor 完成Java解组、XML编组
——Castor可以完成Java和XML的相互转换 前面有介绍过json-lib这个框架,在线博文:http://www.cnblogs.com/hoojo/archive/2011/04/21/2023805.html 以及Jackson这个框架,在线博文:http://www.cnblogs.com/hoojo/archive/2011/04/22/2024628.html 它们都可以完成Java对象到XML的转换,但是还不是那么的完善。还有XStream对JSON及XML的支持,它可以对JSON原创 2011-04-25 02:42:00 · 3819 阅读 · 1 评论 -
xStream完美转换XML、JSON
xStream框架 xStream可以轻易的将Java对象和xml文档相互转换,而且可以修改某个特定的属性和节点名称,而且也支持json的转换; 前面有介绍过json-lib这个框架,在线博文:http://www.cnblogs.com/hoojo/archive/2011/04/21/2023805.html 以及Jackson这个框架,在线博文:http://www.cnblogs.com/hoojo/archive/2011/04/22/2024628.html 它们都完美支持JSON,但是原创 2011-04-22 10:03:00 · 7623 阅读 · 1 评论 -
Java 的JSON、XML转换方法——目录索引
json-lib框架,可以完成Java对象到JSON的相互转换,以及简单转换XML。 在线博文: For cnblogs:http://www.cnblogs.com/hoojo/archive/2011/04/21/2023805.html For csdn: http://blog.csdn.net/IBM_hoojo/archive/2011/04/21/6339246.aspx Jackson框架,可以很方便的完成Java对象和JSON的相互转换。也可以完成xml转换,但是还不是那么的原创 2011-04-27 04:07:00 · 4427 阅读 · 0 评论 -
Jibx 处理XML
前面有介绍过json-lib这个框架,在线博文:http://www.cnblogs.com/hoojo/archive/2011/04/21/2023805.html 以及Jackson这个框架,在线博文:http://www.cnblogs.com/hoojo/archive/2011/04/22/2024628.html 它们都可以完成Java对象到XML的转换,但是还不是那么的完善。 还有XStream对JSON及XML的支持,它可以对JSON或XML的完美转换。在线博文: http://w原创 2011-04-27 03:34:00 · 3383 阅读 · 0 评论 -
Jaxb2 转换XML文档
——完成Java对象和XML相互转换 前面有介绍过json-lib这个框架,在线博文:http://www.cnblogs.com/hoojo/archive/2011/04/21/2023805.html 以及Jackson这个框架,在线博文:http://www.cnblogs.com/hoojo/archive/2011/04/22/2024628.html 它们都可以完成Java对象到XML的转换,但是还不是那么的完善。 还有XStream对JSON及XML的支持,它可以对JSON或XML的原创 2011-04-26 02:43:00 · 4021 阅读 · 0 评论 -
Lucene 简单手记
什么是全文检索与全文检索系统? 全文检索是指计算机索引程序通过扫描文章中的每一个词,对每一个词建立一个索引,指明该词在文章中出现的次数和位置,当用户查询时,检索程序就根据事先建立的索引进行查找,并将查找的结果反馈给用户的检索方式。这个过程类似于通过字典中的检索字表查字的过程。 全文检索的方法主要分为按字检索和按词检索两种。按字检索是指对于文章中的每一个字都建立索引,检索原创 2012-09-05 12:31:41 · 7593 阅读 · 0 评论