[网站分类]1.网站首页原创Java技术区(对首页文章的要求: 原创、高质量、经过认真思考并精心写作。BlogJava管理团队会对首页的文章进行管理。)
耳钉徐老六
这个作者很懒,什么都没留下…
展开
-
在Java中使用Oracle blob
Oracle中的lob (Large Object)可以存储非常大的数据(可能是4GB),这样就可以通过将文件或其它任何对象序列化成字节输出流(OutputStream)后写入数据库,之后使用字节输入流(InputStream)将数据读出然后反序列化为原始文件或对象。操作时需要使用oracle的JDBC包,它扩展了sun的JDBC包中的Blob对象。同时需要注意一些细节。下面的代码演示如何使用bl...2005-02-13 22:27:00 · 71 阅读 · 0 评论 -
James Gosling
今天是Java China 2005的最后一天,下午没有去各个分会场,而是去了长富宫饭店的“Java认证群英欢庆会”,目的只有一个:和Java之父James Gosling合影。……由于明天要交实习手册,拍照过程当中使用的个中手段先按下不表,总之合影是成功的,效果是令人满意的...2005-09-14 22:01:00 · 53 阅读 · 0 评论 -
Object Modeling Strategies (II)
Str#1d. "Invest an Hour" Strategy // activities and model components - Rather than philosophize endlessly, invest an hour in each of several different ways of modeling a particularly challenging area...2005-09-19 15:23:00 · 33 阅读 · 0 评论 -
Object Modeling Strategies (III)
Identifying system purpose and features A purpose is an overall desired result, the aim of one's actions. Features are specific capabilities for the system under consideration. This section present...2005-09-19 15:26:00 · 42 阅读 · 0 评论 -
Tomcat 5.5.9 不支持switch(<enum>)?
ServiceExceptionType:package pqp.service;public enum ServiceExceptionType{ DB_FAILURE ,USER_EXISTED ,INVALID_USERNAME_OR_PASSWORD}在新用户注册的逻辑方法中会检查用户名是否已存在,存在的话抛出ServiceException,并将Service...2005-09-19 18:51:00 · 40 阅读 · 0 评论 -
“软件危机”时总结的坏的编程习惯——我们是否依旧守着古风?
1、乱用GOTO语句(上下跳转看起来非常方便) 2、大量使用全局变量(无法控制它们值的变化,例如在非预期的子程序的执行中) 3、不声明变量类型就使用(隐含类型可以在Fortran中使用,例如,一个实数可以截短为一个整数而没有引起程序员的注意) 4、非结构化的、组织混乱的大块代码用于多个任务(一块可能有上千行代码) 5、注释行太少(由于它们并不被执行!)...2005-10-09 14:23:00 · 40 阅读 · 0 评论 -
Java code name
VERSION CODE NAME RELEASE DATEJDK 1.1.4SparklerSept 12, 1997JDK 1.1.5PumpkinDec 3, 1997JDK 1.1.6AbigailApril 24, 1998JDK 1.1.7BrutusSept 28, 1998JDK 1.1.8ChelseaApril 8...2005-10-10 22:54:00 · 50 阅读 · 0 评论 -
Object Modeling Strategies (IV)
Str#6. "Four Kinds of Features" Strategy // identifying purpose and features - Be certain to include features that cover the following: 1. Log important information. 2. Conduct business. 3. Analyz...2005-10-11 16:51:00 · 43 阅读 · 0 评论 -
Java Concurrent框架之阻塞队列(Blocking queue)
引子:大家上过操作系统的都知道“生产者-消费者(Producer-Consumer)”模型,主要讨论的是进程(线程)间的互斥和同步问题,关键是对锁(lock)的申请、独占和释放,在这里我就不罗嗦了。原先我写的Java代码如下:public class Producer extends Thread{ private ProductList products = ProductList.ge...2005-10-11 16:56:00 · 39 阅读 · 0 评论 -
奇怪的范型定义
java.util.Collections 类中两个sort方法的定义很奇怪,哪位能给解释一下:public static <T> void sort(List<T> list, Comparator<? super T> c)1、既然该方法无返回值(void),第一个“<T>”有什么作用?2、“?”代表什么含义?3、“super”起什么作用?4、...2005-10-19 18:14:00 · 44 阅读 · 0 评论 -
java.util.Calendar中的陷阱
需求:从输入框得到用户分开输入的年、月、日,将信息做为Date类型插入数据库解决一:InputBean bean = new InputBean(); // 封装用户输入// 获取用户输入,封装于bean对象中Calendar cal = Calendar.getInstance();cal.set(cal.YEAR,bean.getYear()); // Yearcal.set(cal.M...2005-10-24 17:23:00 · 43 阅读 · 0 评论 -
在Struts中使用Validator实现可配置的信息校验(一)
在Struts中对用户输入信息的校验一般在FromBean中进行(除非需要访问数据库进行诸如登录信息的校验,因为这是Action的工作),本文将阐述如何在Struts中实现可配置的信息校验。一、在FormBean中手工实现最简单的方法是直接在FormBean中重写ActionForm类的validate方法,validate方法签名如下:public ActionErrors valida...2006-03-07 17:53:00 · 100 阅读 · 0 评论 -
Joshua Bloch咏Tiger诗八首
“Ease of Development”是J2SE 1.5的主要卖点。为此,这一版本加入了七种新的语言特性——Enhanced for Loop、Autoboxing/Auto-Unboxing、Varargs、Static Import、Enumeration、Metadata和Generics。使用这些特性,可以让编写出来的程序更简练、更清晰、更不容易出错,从而简化开发的过程。Joshua...2005-09-08 16:59:00 · 75 阅读 · 0 评论 -
Object Modeling Strategies (I)
Activities and model components Str#1. "Four Major Activities, Four Major Components" Strategy // activities and model components - Organize your work around four major activities, within four major...2005-09-08 10:12:00 · 48 阅读 · 0 评论 -
缺省适配器模式(Default Adapter)
一、概述当不需要全部实现适配器接口提供的方法时,可先设计一个抽象类实现适配器接口,并为接口中每个方法提供一个默认实现(空方法)。那么该抽象类的子类可有选择地覆盖父类的某些方法来实现需求。二、结构 三、动机对于一个接口不想使用其所有的方法时。...2005-09-06 12:01:00 · 38 阅读 · 0 评论 -
java.util.StringTokenization
今天室友老七做数据库大作业,其中要实现一个功能,就是输入一个以“,”分隔的数字串,将得到的数字填入一个数组,他自己写了一个,很笨拙。我提议他用java.util.StringTokenization类。那个类使用起来很方便:StringTokenizer st = new StringTokenizer("this is a test"," ");while (st.hasMoreTokens...2005-02-13 22:29:00 · 41 阅读 · 0 评论 -
JBuilder 2005中的Servlet mapping
使用JB进行Servlet好像很方便的样子,但是servlet mapping我试了N遍才终于行了,“url pattern”里好向只能填“*.do”之类的东西,其它的一律不行。2005-02-13 22:30:00 · 49 阅读 · 0 评论 -
static与final变量
一、illegal forward refrence前天写一个类时遇到一个很眼生的编译错误(问题简化后):1punlic final class Constants{2 public static int VAR2 = VAR1 + 1;3 public static int VAR1 = 1;4}编译时出错(第2行):illegal forward refrence仔细一...2005-08-04 12:27:00 · 56 阅读 · 0 评论 -
使用策略模式(Strategy)实现多关键字排序
“策略模式”的出现,是为了提供一套相互之间可灵活替换的算法,在不影响上层接口的情况下,用户可以自由选择不同的算法完成逻辑。策略模式的UML示意图如下:<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /> <?xml:namespace prefix = v ns = "u...2005-08-04 12:37:00 · 49 阅读 · 0 评论 -
Alloy
Alloy look and feel(http://www.incors.com/lookandfeel/index.php)是一个非常漂亮的Java的look and feel,但是它是收费的,免费的只能使用30天。经过一个晚上和一个白天的努力,我终于成功破解了alloy(2005-5-10),心里那叫一个高兴啊,以后再做ui可以有很漂亮的界面了。等两天有空作一个算号器。...2005-08-04 13:09:00 · 47 阅读 · 0 评论 -
IDEA
今天在TSS上看到IntelliJ的IDEA 5.0终于release了,于是马上当了一个,还申请了一个30天的评估号。要知道IDEA可是个人程序员非常钟爱的IDE,界面很漂亮,使用Alloy的Look and Feel,而且功能也相当强大,个人认为在中国这片没有license概念的土地上可以和JBuilder抗衡。但是上网站一看价格,竟然要$499!看来自己花钱买license是不可能的了。于是...2005-08-04 13:11:00 · 47 阅读 · 0 评论 -
原型模式(Prototype)
一、概述原型模式属于对象创建模式,通过给出一个原型对象来指明所要创建的对象类型,然后用复制这个对象的方法创建出更多同类型的对象。 二、结构1、简单形式Client:提出创建对象的请求Prototype:抽象角色,给出所有具体原型类所需的接口ConcretePrototype:被复制的对象2、登记形式PrototypeManager:创建并记录具体对象 三、浅克隆与...2005-08-05 10:54:00 · 33 阅读 · 0 评论 -
适配器模式(Adapter)
一、概述类的适配器模式把被适配的类的API转换成为目标类的API二、结构1、类的适配器模式Target:所期待得到的接口Adaptee:现有需要适配的类Adapter:把源接口转化成目标接口的核心类2、对象的适配器模式i、同一个适配器可以把源和其子类都适配到目标接口ii、与类的适配器相比,要覆盖源类的方法不很容易,除非做一个源类的子类,然后对子类适配iii、可以很方便地...2005-08-06 19:39:00 · 38 阅读 · 0 评论 -
A beginners guide to Dependency Injection [转载自TSS]
ScopeThis article presents a high level overview of Dependency Injection (DI). It aims to present the overall concept of Dependency Injection to the junior developer within the context of how it coul...2005-08-08 22:30:00 · 59 阅读 · 0 评论 -
Alloy破解过程
1package com.incors.plaf.alloy; 2 3import java.io.*; 4import java.util.GregorianCalendar; 5import java.util.zip.CRC32; 6import java.util.*; 7 8public class ch{ 9 public ch(){ 10 } 11 1...2005-08-09 15:42:00 · 83 阅读 · 0 评论 -
接口与Object类的关系?
今天凌晨coding的时候发现一个很有趣的现象。“Object类是Java体系的单根父节点,所有Java类都从Object类继承。”这句话是大部分green hand都知道的Java金句,毋庸置疑。那如果我问你接口和Object类的关系呢?答案是“没有关系”。请看下面的代码:1Map map = new HashMap();2map.clone();Map是一个接口,HashMap是一个...2005-08-19 13:53:00 · 81 阅读 · 0 评论 -
在Struts中使用Validator实现可配置的信息校验(二)
三、自定义校验逻辑毕竟Struts提供的校验逻辑有限,不可能满足所有的开发需要,因此有时必须对其进行扩展。这里举一个实际项目中的例子:校验码检查。现在很多网站为了防止恶意的页面刷新攻击,都使用了图片形式的校验码,如:表单提交后需要检查校验码(存在request或session里)和用户输入是否一致,代码如下: 1public class MyValidator{ 2 private s...2006-03-07 18:38:00 · 57 阅读 · 0 评论