2004年07月
我在做人事管理软件时发现一个问题就是,工资管理中工资的发放项目经常会发生变化,而且工资项目之间的计算关系也经常发生变化,这为实际的编程带来了很大的麻烦。其实实际工作中还有很多类似的情况需要解决,希望能为大家提供多一种思路以供参考阅读全文>
发表于 @ 2004年07月31日 17:04:00|评论(loading...)|编辑
笔者在实际工作中经常用Excel表做数据报表,大多数表格的数据都要从数据库中读取,这样我就用C++Builder做了一个报表程序,方便了很多,现在把它共享给C++Builder爱好者们,就算为丰富C++Builder的文档资料做点事情吧。阅读全文>
发表于 @ 2004年07月31日 17:02:00|评论(loading...)|编辑
有经验的 Java 开发人员都知道写好 toString 方法很重要。对可用人类理解的形式查看的对象进行记录和调试都相当容易;当处理分布式应用程序时尤其是这样。不幸的是,为许多类实现 toString 方法可能相当耗时 -- 尤其是对于那些具有许多属性的类。因为 toString 的行为相当规则,所以最好使创建该方法的任务能够自动完成。本文提供的这个实用程序可以帮助您实现这一点,同时也减轻了您在开发时的负担。阅读全文>
发表于 @ 2004年07月30日 23:24:00|评论(loading...)|编辑
SDK提供了有序集合接口 java.util.List的几种实现,其中三种最为人们熟知的是Vector、ArrayList和LinkedList。有关这些List类的性能差别是一个经常被问及的问题。在这篇文章中,我要探讨的就是LinkedList和Vector/ArrayList之间的性能差异。为全面分析这些类之间的性能差异,我们必须知道它们的实现方法。因此,接下来我首先从性能的角度出发,简要介绍这些类的实现特点。 阅读全文>
发表于 @ 2004年07月29日 16:12:00|评论(loading...)|编辑
WWW的发展使得基于因特网的应用程序不再局限于静态或者简单的动态内容提供。传统的一些以软件包形式发布应用程序例如报表系统等都在逐渐搬到因特网上。但是这两者之间有着天壤之别,虽然对于数据获取、业务处理等方面基本类似,但是最大的差别在于用户界面。为了能在web浏览器上显示要求用户界面使用HTML以及图片的方式来展现数据,而传统的一些利用操作系统本身的控件来开发的用户界面无法适应琳琅满目的客户端,因此在这里也变得无能为力。回到本文的题目上来,为了创建一个可以在web浏览器上查看到图表一般有两种做法:第一种就是使用applet利用java本身对图形的支持来显示一个图表;第二种就是直接在web服务器端生成好图表图片文件后发送给浏览器。第一种方式显然对于客户端要求太高,随着现在主流浏览器放弃对JAVA的支持后,这种方式只适合一些局域网的应用,而对于因特网的环境就显得不太适合。因此我们下面将介绍一个JAVA的图表引擎JFreeChart用来产生基于WEB的图表。阅读全文>
发表于 @ 2004年07月27日 19:13:00|评论(loading...)|编辑
线性表,链表,哈希表是常用的数据结构,在进行Java开发时,JDK已经为我们提供了一系列相应的类来实现基本的数据结构。这些类均在java.util包中。本文试图通过简单的描述,向读者阐述各个类的作用以及如何正确使用这些类。 阅读全文>
发表于 @ 2004年07月26日 22:53:00|评论(loading...)|编辑
不管你是处理财务交易还是计划着下一步的行动,你都要知道怎样在Java中建立,使用和显示日期。这需要你简单的查阅一下相应类的API参考:一个日期可以创建3个相关类的对象。这篇文章告诉你你想要知道的内容。
阅读全文>
发表于 @ 2004年07月26日 21:13:00|评论(loading...)|编辑
在Java 2的Collections框架中,主要包括两个接口及其扩展和实现类:Collection接口和Map接口。两者的区别在于前者存储一组对象,后者则存储一些关键字/值对。阅读全文>
发表于 @ 2004年07月26日 21:02:00|评论(loading...)|编辑
java中原子操作是线程安全的论调经常被提到。根据定义,原子操作是不会被打断地的操作,因此被认为是线程安全的。实际上有一些原子操作不一定是线程安全的。阅读全文>
发表于 @ 2004年07月26日 20:58:00|评论(loading...)|编辑
Java的堆是一个运行时数据区,类的实例(对象)从中分配空间。Java虚拟机(JVM)的堆中储存着正在运行的应用程序所建立的所有对象,这些对象通过new、newarray、anewarray和multianewarray等指令建立,但是它们不需要程序代码来显式地释放。一般来说,堆的是由垃圾回收 来负责的,尽管JVM规范并不要求特殊的垃圾回收技术,甚至根本就不需要垃圾回收,但是由于内存的有限性,JVM在实现的时候都有一个由垃圾回收所管理的堆。垃圾回收是一种动态存储管理技术,它自动地释放不再被程序引用的对象,按照特定的垃圾收集算法来实现资源自动回收的功能。阅读全文>
发表于 @ 2004年07月22日 21:30:00|评论(loading...)|编辑
"包"机制是java中特有的,也是java中最基础的知识。一些初学java的朋友,通常象学其它语言一样从教材上copy一些程序来运行,可是却常常遇到莫名其妙的错误提示。这些问题事实上都出在对"包"的原理不够清楚。本文将就此问题进行深入阐述。阅读全文>
发表于 @ 2004年07月22日 21:26:00|评论(loading...)|编辑
本 章 中 ,我 们 首 先 讲 述 面 向 对 象 程 序 设 计 的 基 本 概 念 及 特 点 ,然 后 讨 论 Java中 的 类 、对 象 、 包 和 接 口 ,最 后 进 行 小 结 ,给 出 一 个 完 整 的 Java文 件 的 格 式 。阅读全文>
发表于 @ 2004年07月22日 20:59:00|评论(loading...)|编辑
数 组 是 有 序 数 据 的 集 合 ,数 组 中 的 每 个 元 素 具 有 相 同 的 数 据 类 型 ,可 以 用 一 个 统 一 的 数 组 名 和 下 标 来 唯 一 地 确 定 数 组 中 的 元 素 。 数 组 有 一 维 数 组 和 多 维 数 组 ,下 面 我 们 分 别 介
绍 。 阅读全文>
发表于 @ 2004年07月22日 20:57:00|评论(loading...)|编辑
与 C、 C++相 同 ,Java程 序 通 过 流 控 制 来 执 行 程 序 流 ,完 成 一 定 的 任 务 。 程 序 流 是 由 若 干 个 语 句 组 成 的 。 语 句 可 以 是 单 一 的 一 条 语 句 ( 如 c=a+b; ),也 可 以 是 用 大 括 号 {}括 起 来 的 一 个
复 合 语 句 。
阅读全文>
发表于 @ 2004年07月22日 20:56:00|评论(loading...)|编辑
知道UML造成了怎样的局面大混乱吗?知道什么样的功能是UML拥有但JAVA不具备的吗?知道我们为什么需要除JAVA外的另一种电脑语言吗?UML并不仅仅只是JAVA或者其它什么语言的替代品。UML并不仅仅只是JAVA或者其它什么语言的替代品。UML是面向对象的分析及设计的注释.阅读全文>
发表于 @ 2004年07月22日 20:52:00|评论(loading...)|编辑
本概述是从《JDBCTM Database Access from JavaTM: A Tutorial and Annotated Reference 》这本书中摘引来的。JavaSoft 目前正在准备这本书。这是一本教程,同时也是 JDBC 的重要参考手册,它将作为 Java 系列的组成部份在 1997 年春季由 Addison-Wesley 出版公司出版。阅读全文>
发表于 @ 2004年07月21日 20:40:00|评论(loading...)|编辑
本概述摘自《JDBCTM Database Access from JavaTM: A Tutorial and Annotated Reference》,目前正由 JavaSoft 继续编写。这本书既是 JDBC 的教程,也是一本权威性参考手册,将作为 Java 系列的一部分在 1997 年春季由 Addison-Wesley 出版公司出版。阅读全文>
发表于 @ 2004年07月21日 20:35:00|评论(loading...)|编辑
本概述是从《JDBCTM Database Access from JavaTM: A Tutorial and Annotated Reference 》这本书中摘引来的。JavaSoft 目前正在准备这本书。这本书是一本教程,同时也是 JDBC 的重要参考手册,它将作为 Java 系列的组成部份在 1997 年春季由 Addison-Wesley 出版公司出版。
阅读全文>
发表于 @ 2004年07月21日 20:34:00|评论(loading...)|编辑
对于Java语言,最体贴的一项设计就是它并没有打算让人们为了写程序而写程序——人们也需要考虑程序的文档化问题。对于程序的文档化,最大的问题莫过于对文档的维护。阅读全文>
发表于 @ 2004年07月21日 19:36:00|评论(loading...)|编辑
有的时候JDBC运行的不够理想,这就促使我们写一些与特定数据库相关的存储过程。作为一个替换方案,不妨试一下Statement的批处理特征,看看一次执行所有的SQL语句是否会带来速度的提升。阅读全文>
发表于 @ 2004年07月20日 18:56:00|评论(loading...)|编辑
本文简要的讨论了Java语言编程中更新XML文档的四种常用方法,并且分析这四种方法的优劣。其次,本文还对如何控制Java程序输出的XML文档的格式做了展开论述。
阅读全文>
发表于 @ 2004年07月20日 18:51:00|评论(loading...)|编辑
本文介绍 Struts,它是使用 servlet 和 JavaServer Pages 技术的一种 Model-View-Controller 实现。Struts 可帮助您控制 Web 项目中的变化并提高专业化水平。尽管您可能永远不会用 Struts 实现一个系统,但您可以将其中的一些思想用于您以后的 servlet 和 JSP 网页的实现中。
阅读全文>
发表于 @ 2004年07月19日 22:17:00|评论(loading...)|编辑
Java.sql包中的 java.sql.Driver, jdbc.sql.Connection等提供给程序开发人员统一的开发接口,数据库提供商提供相应的实现,对程序开发人员来讲只要知道这些接口都有哪些方法就可以了。但我们可以深入一些看看到底这里面都做了那些事, 同时也可以学习其中的编程模式(如Interface模式等)。
阅读全文>
发表于 @ 2004年07月19日 21:44:00|评论(loading...)|编辑
在Java Collection Framework中定义的List实现有Vector,ArrayList和LinkedList。这些集合提供了对对象组的索引访问。他们提供了元素的添加与删除支持。然而,它们并没有内置的元素排序支持。阅读全文>
发表于 @ 2004年07月19日 21:39:00|评论(loading...)|编辑
怎样在Java中得到CPU的使用情况呢?这儿同时有一个好消息和一个坏消息。坏消息是不能使用纯Java的方法得到CPU的使用。没有这方面的直接的API。一个建议的替代方法是通过Runtime.exec()确定JVM的进程ID(PID),调用外部的、平台相关的命令,例如ps,然后在运行结果中解析出感兴趣的PID。但是,这种方法并不理想。阅读全文>
发表于 @ 2004年07月18日 23:59:00|评论(loading...)|编辑
Java 不支持 pointer,只提供 reference,初学者常常因此颇为困惑,特别是修过数据结构的信息系学生,他们心中第一个想到的是:「没 pointer,这怎么成,那不就做不出 linked list 和 tree 的数据结构?」殊不知 reference 就是一种智能型的 pointer,它具有 pointer 的好处,而且不用像 pointer 一样要程序员自行 reference (*) 以及 dereference (&),更不会像 pointer 一样会误闯内存禁区造成 crash。
阅读全文>
发表于 @ 2004年07月18日 23:56:00|评论(loading...)|编辑
过山车,是一种在剧烈地忽上忽下中给人以强烈刺激的运动游戏,只有胆子足够大且身体健康的人士才敢尝试。IT产业与此种游戏颇有许多类似之处,用郭士纳的话来说:“IT产业是一个真正独特的行业”,“IT行业的竞争战是真正凶残的竞争,其目的总是要置竞争对手于绝境或死地”。考虑到郭士纳曾经在咨询业、传统服务业、传统制造业和IT产业都有过长期服务的经历,就能真正理解他说的信息技术产业的独特之处:残酷的竞争。其刺激程度比过山车有过之而无不及。
阅读全文>
发表于 @ 2004年07月16日 15:57:00|评论(loading...)|编辑
回滚段管理一直是ORACLE数据库管理的一个难题,本文通过实例介绍ORACLE回滚段的概念,
用法和规划及问题的解决。 阅读全文>
发表于 @ 2004年07月16日 15:46:00|评论(loading...)|编辑
本文叙述了作者在运用Struts过程中来之不易的若干经验和心得。如果你是jsp和servlet开发Web应用的Java程序员,并且也正在考虑采用基于Struts的构建方法的话,那么你会在这里发现很多颇有见地同时也很有价值的信息。阅读全文>
发表于 @ 2004年07月15日 21:00:00|评论(loading...)|编辑
数据库安全问题一直是人们关注的焦点之一,我们知道一个企业或者机构的数据库如果遭到黑客的攻击,而这些数据库又保存着非常重要的数据,象银行、通信等数据库,后果将不堪设想。Oracle数据库使用了多种手段来保证数据库的安全性,如密码,角色,权限等等。
阅读全文>
发表于 @ 2004年07月15日 20:46:00|评论(loading...)|编辑
Java数据库连接(JDBC)API是一系列能够让Java编程人员访问数据库的接口,各个开发商的接口并不完全相同。在使用多年的Oracle公司的JDBC后,我积累了许多技巧,这些技巧能够使我们更好地发挥系统的性能和实现更多的功能。阅读全文>
发表于 @ 2004年07月15日 20:27:00|评论(loading...)|编辑
由于工作的需要,本人经常要面对大量的文字电子资料的整理工作,因此曾对在JAVA中正则表达式的应用有所关注,并对其有一定的了解,希望通过本文与同行进行有关方面的心得交流。
阅读全文>
发表于 @ 2004年07月14日 21:44:00|评论(loading...)|编辑
在 Java 支持方法指针之前,Java 接口不能提供一种实现回调的好方法。如果您习惯于传递在事件驱动编程模型中调用的函数指针,则您会喜欢本技巧。阅读全文>
发表于 @ 2004年07月14日 21:18:00|评论(loading...)|编辑
本文介绍了三种修改现有代码提高其可重用性的方法,它们分别是:改写类的实例方法,把参数类型改成接口,选择最简单的参数接口类型。
阅读全文>
发表于 @ 2004年07月14日 21:16:00|评论(loading...)|编辑
EJB,是企业JAVA BEAN的缩写,这里想跟大家谈谈一些实质的问题
阅读全文>
发表于 @ 2004年07月14日 11:28:00|评论(loading...)|编辑
大家在應用ORACLE的時候可能會遇到很多看起來不難的問題, 特別對新手來說, 今天我簡單把它總結一下, 發布給大家, 希望對大家有幫助! 和大家一起探討, 共同進步!
對ORACLE高手來說是不用看的.
阅读全文>
发表于 @ 2004年07月13日 21:42:00|评论(loading...)|编辑
大家在應用ORACLE的時候可能會遇到很多看起來不難的問題, 特別對新手來說, 今天我簡單把它總結一下, 發布給大家, 希望對大家有幫助! 和大家一起探討, 共同進步!
對ORACLE高手來說是不用看的.
阅读全文>
发表于 @ 2004年07月13日 21:40:00|评论(loading...)|编辑
大家在應用ORACLE的時候可能會遇到很多看起來不難的問題, 特別對新手來說, 今天我簡單把它總結一下, 發布給大家, 希望對大家有幫助! 和大家一起探討, 共同進步!
對ORACLE高手來說是不用看的.
阅读全文>
发表于 @ 2004年07月13日 21:38:00|评论(loading...)|编辑
如果你是大虾,本文对你没有任何价值,如果你是小小鸟,那就进来看看吧。本文介绍7种常用的黑客工具,足以将一个白痴武装到牙齿。同时本文也给出了对付这
7种工具的防御措施,大家可以加强警惕。
阅读全文>
发表于 @ 2004年07月13日 21:07:00|评论(loading...)|编辑
队列是设计程序中常用的一种数据结构。它类似日常生活中的排队现象,采用一种被称为
“先进先出”(FIFO)的存储结构。数据元素只能从队尾进入,从队首取出。阅读全文>
发表于 @ 2004年07月13日 21:00:00|评论(loading...)|编辑
Bean 的全部意义不只是其现有能力,更在于其可以为商业提供的有竞争力的潜在能力。IT 设计师和应用开发人员现在可以将精力完全集中在商业逻辑,而将如事务、持久性和安全性的底层工作留给服务器。WebSphere 的“组件代理”功能将提供所有这些(还有后端访问)和对象事务管理器。阅读全文>
发表于 @ 2004年07月13日 12:45:00|评论(loading...)|编辑
本文从五个方面对J2EE进行了比较全面的介绍。从J2EE的概念说起,到它的优势,到J2EE典型的四层模型,和它的框架结构,最后是J2EE十三种核心技术的一个简介。本文分门别类的对J2EE中的服务,组件,层次,容器,API都做了比较详细的介绍,相信看完此文,读者会对J2EE有一个更清晰的认识。阅读全文>
发表于 @ 2004年07月12日 14:27:00|评论(loading...)|编辑
abstract class和interface是Java语言中对于抽象类定义进行支持的两种机制,正是由于这两种机制的存在,才赋予了Java强大的面向对象能力。abstract class和interface之间在对于抽象类定义的支持方面具有很大的相似性,甚至可以相互替换,因此很多开发者在进行抽象类定义时对于abstract class和interface的选择显得比较随意。其实,两者之间还是有很大的区别的,对于它们的选择甚至反映出对于问题领域本质的理解、对于设计意图的理解是否正确、合理。本文将对它们之间的区别进行一番剖析,试图给开发者提供一个在二者之间进行选择的依据。
阅读全文>
发表于 @ 2004年07月12日 13:41:00|评论(loading...)|编辑
早期的编程语言(比如C语言)没有异常处理,通常是遇到错误返回一个特殊的值或设定一个标志,并以此判断是不是有错误产生。随着系统规模的不断扩大,这种错误处理已经成为创建大型可维护程序的障碍了。于是在一些语言中出现了异常处理机制,比如在Basic中的异常处理语句“on error goto”,而Java则在C++基础上建立了新的异常处理机制。阅读全文>
发表于 @ 2004年07月11日 22:20:00|评论(loading...)|编辑
我们在做信息系统的时候,都要访问数据库,我最近接手一个项目,项目组决定使用Java编写,我负责数据层的设计和编码,为了提高代码的重用性和提高项目的开发效率。我们开发了一个通用的数据库连接和完成基本操作的类库,个人认为这个类在做MIS系统时还是有一定的价值,所以总结出来,介绍给大家。阅读全文>
发表于 @ 2004年07月11日 22:06:00|评论(loading...)|编辑
多线程编程技术是Java语言的重要特点。多线程编程的含义是将程序任务分成几个并行的子任务。特别是在网络编程中,你会发现很多功能是可以并发执行的。比如网络传输速度较慢、用户输入速度较慢,你可以用两个独立的线程去完成这两个功能,而不影响正常的显示或其它功能。
阅读全文>
发表于 @ 2004年07月11日 21:51:00|评论(loading...)|编辑
Java中的包(Package)其实指的就是目录,它是为了更好地管理Java类(Class)和接口(Interface)。Java语言的包可以被另一个Java开发包所使用。如果我们要引用某个包中的类,用import关键字来标明即可。阅读全文>
发表于 @ 2004年07月11日 21:48:00|评论(loading...)|编辑
在Struts 架构中,Controller主要是ActionServlet,但是对于业务逻辑的操作则主要由Action、ActionMapping、ActionForward这几个组件协调完成。其中,Action扮演了真正的业务逻辑的实现者,而ActionMapping和ActionForward则指定了不同业务逻辑或流程的运行方向。
阅读全文>
发表于 @ 2004年07月11日 21:46:00|评论(loading...)|编辑
Model就是在对用户请求的整个控制过程中,真正处理用户请求并保存处理结果的对象,在整个过程中,我们一般利用JavaBean来把一些信息保存起来以便在各个对象之间传递。阅读全文>
发表于 @ 2004年07月11日 21:41:00|评论(loading...)|编辑
本文主要介绍采用JDBC、ODBC接口实现了与SQL Server2000数据库的连接,并利用Java应用程序对其进行访问,同时通过图形用户界面实现了简单的查询功能。
阅读全文>
发表于 @ 2004年07月11日 21:26:00|评论(loading...)|编辑
常听人说程序员的生活枯燥为人刻板,其实这是你不懂程序员,代码之外,这些高智商的人幽默有趣,论坛常常是他们展现才华的地方(悲哀,因为给他们展现Coder之外的才华的地方和时间太少),我在论坛上看的一篇妙贴和回贴,整理出来供大家一乐。
阅读全文>
发表于 @ 2004年07月11日 19:49:00|评论(loading...)|编辑
我在Java论坛看到这篇文章,作者以轻松的语言比喻了java的23种模式,有很好的启发作用,但可惜没有给出具体的意思,我就在后边加上了。这些都是最简单的介绍,要学习的话建议你看一下阎宏博士的《Java与模式》一书。阅读全文>
发表于 @ 2004年07月11日 19:40:00|评论(loading...)|编辑
JAVA以其跨平台的特性深受人们喜爱,而又正由于它的跨平台的目的,使得它和本地机器的各种内部联系变得很少,约束了它的功能。解决JAVA对本地操作的一种方法就是JNI。阅读全文>
发表于 @ 2004年07月09日 15:17:00|评论(loading...)|编辑
开实用主义的观点,从美学(或者说,计算机科学)的角度来看,语言的比较似乎并不像它通常所表现的那么低级阅读全文>
发表于 @