调度员,工人及任务的OO分析过程
作者:duketian 日期:2007-10-09
日常编码中,我们常需要为各种业务进行建模,为工厂中的任务调度建模就很有意思的,它的主要流程是基本是这样:
1.调度员将工件图纸交付给工人,这是任务的下达.
2.工人工作,完成工件,这是任务的进行过程.
3.工件完成后,工人将图纸和工件返还给调度员,或者到了确定的时间后由调度员去取.这是任务的完成.
4.重复上述三个步骤.
在这个流程中,还存在一些特征:
1.工人可以有多项任务,但他在一个时间只能做一个活,具体做那个由任务的优先级确定.
2.任务完成后要让调度员知道,现实中是工人来找调度员或者调度员找工人来实现的.一般来说调度员找...
1.调度员将工件图纸交付给工人,这是任务的下达.
2.工人工作,完成工件,这是任务的进行过程.
3.工件完成后,工人将图纸和工件返还给调度员,或者到了确定的时间后由调度员去取.这是任务的完成.
4.重复上述三个步骤.
在这个流程中,还存在一些特征:
1.工人可以有多项任务,但他在一个时间只能做一个活,具体做那个由任务的优先级确定.
2.任务完成后要让调度员知道,现实中是工人来找调度员或者调度员找工人来实现的.一般来说调度员找...
标签:
如何才算掌握Java
作者:duketian 日期:2007-10-09
[size=3]时常看到一些人说掌握了Java,但是让他们用Java做一个实际的项目可能又困难重重,在这里,笔者根据自己的一点理解斗胆提出自己的一些对掌握Java这个说法的标准,当然对于新手,也可以提供一个需要学习哪些内容的参考。另外这个标准仅限于J2SE部分,J2EE部分的内容有时间再另说。
1、语法:必须比较熟悉,在写代码的时候IDE的编辑器对某一行报错应该能够根据报错信息知道是什么样的语法错误并且知道任何修正。
2、命令:必须熟悉JDK带的一些常用命令及其常用选项,命令至少需要熟悉:appletviewer、HtmlConverter、jar、java、javac、j...
1、语法:必须比较熟悉,在写代码的时候IDE的编辑器对某一行报错应该能够根据报错信息知道是什么样的语法错误并且知道任何修正。
2、命令:必须熟悉JDK带的一些常用命令及其常用选项,命令至少需要熟悉:appletviewer、HtmlConverter、jar、java、javac、j...
标签:
Java事务精要
作者:duketian 日期:2007-10-09
简单事务的概念
我不想从原理上说明什么是事务,应为那太枯燥了。我只想从一个简单的例子来说明什么是事务。
例如我们有一个订单库存管理系统,每一次生成订单的同时我们都要消减库存。通常来说订单和库存在数据库里是分两张表来保存的:订单表,库存表。每一次我们追加一个订单实际上需要两步操作:在订单表中插入一条数据,同时修改库存的数据。
这样问题来了,例如我们需要一个单位为10的订单,库存中有30件,理想的操作是我们在订单表中插入了一条单位为10的订单,之后将库存表中的数据修改为20。但是有些时候事情并不是总是按照你的想法发生,例如:在你修改库存的时候,数据库突然由于莫名其...
我不想从原理上说明什么是事务,应为那太枯燥了。我只想从一个简单的例子来说明什么是事务。
例如我们有一个订单库存管理系统,每一次生成订单的同时我们都要消减库存。通常来说订单和库存在数据库里是分两张表来保存的:订单表,库存表。每一次我们追加一个订单实际上需要两步操作:在订单表中插入一条数据,同时修改库存的数据。
这样问题来了,例如我们需要一个单位为10的订单,库存中有30件,理想的操作是我们在订单表中插入了一条单位为10的订单,之后将库存表中的数据修改为20。但是有些时候事情并不是总是按照你的想法发生,例如:在你修改库存的时候,数据库突然由于莫名其...
标签:
JSP中表单数据存储的一种通用方法
作者:duketian 日期:2007-10-09
(Java 2 Enterprise Edition)技术已广泛应用在Web应用开发中,其中的JavaBean、Servlet技术为开发者提供了更为清晰的开发环境,使用JSP技术表现页面,使用Servlet技术完成大量的业务处理,使用Bean来存储数据及一些业务处理。在WEB应用中,业务数据存储到数据库中的处理工作经常很繁重,其中一种主要的形式就是表单数据存储到数据库,整个应用处理过程牵涉到大量的这种数据存储操作,对每个表单都要单独编写相应的数据存储程序,花费了开发人员大量的时间和精力。采用什么方法来减轻表单数据存储的开发工作量是值得研究的问题。
两种常见的表单数据存储处理方法 ...
两种常见的表单数据存储处理方法 ...
标签: JSP
again poi
作者:duketian 日期:2007-09-29
[code]
public class RefundBillRptexcel implements IBusinessBean{
private HSSFWorkbook wb = null;
private HSSFSheet sheet = null;
HSSFRow row; //行
HSSFCell cell; //单元格
public int execute(FormStore formStore) {
wb = new HSSFWorkbook(); // book
sheet = wb.createShee...
public class RefundBillRptexcel implements IBusinessBean{
private HSSFWorkbook wb = null;
private HSSFSheet sheet = null;
HSSFRow row; //行
HSSFCell cell; //单元格
public int execute(FormStore formStore) {
wb = new HSSFWorkbook(); // book
sheet = wb.createShee...
标签:
5条JAVA基础 --周剑雄老师
作者:duketian 日期:2007-09-29
1)final :
当一个类被定义为final后,它将不能被继承;当一个变量被定义为final后,它将不能改变值;当一个方法被定义为final后,它将不能被重写。
<br>
2)抽象类,抽象方法以及接口:
抽象类不能生成实例,只能用来继承,一般会包含抽象方法,作为债务产生;当类中定义一个抽象方法,此类自动变成抽象类;抽象方法没有方法体;接口可以看成一个全部都是抽象方法的类,接口的所有方法都必须是public或者默认类型;
<br>
3)OO三大特性:继承,封装,多态
继承:extends,一般用将父类的引用初始化为某个子类的对象;此时只能调用父类中有...
当一个类被定义为final后,它将不能被继承;当一个变量被定义为final后,它将不能改变值;当一个方法被定义为final后,它将不能被重写。
<br>
2)抽象类,抽象方法以及接口:
抽象类不能生成实例,只能用来继承,一般会包含抽象方法,作为债务产生;当类中定义一个抽象方法,此类自动变成抽象类;抽象方法没有方法体;接口可以看成一个全部都是抽象方法的类,接口的所有方法都必须是public或者默认类型;
<br>
3)OO三大特性:继承,封装,多态
继承:extends,一般用将父类的引用初始化为某个子类的对象;此时只能调用父类中有...
标签: 5条JAVA基础
ResultSet To ArrayList
作者:duketian 日期:2007-06-25
String str = "";
str = "select * from temp";
[code]
Statement stmt = con.createStatement();
ResultSet rs = stmt.executeQuery(str);
ResultSetMetaData rm = rs.getMetaData();
int rmc = rm.getColumnCount();
ArrayList al = new ArrayList();
ArrayList bl = ne...
str = "select * from temp";
[code]
Statement stmt = con.createStatement();
ResultSet rs = stmt.executeQuery(str);
ResultSetMetaData rm = rs.getMetaData();
int rmc = rm.getColumnCount();
ArrayList al = new ArrayList();
ArrayList bl = ne...
标签: ArrayList
SourceForge上最热门的5个应用程序(转贴)
作者:duketian 日期:2007-06-25
ITWire列出了SourceForge上最活跃最热门的开源项目,并分析了它们受欢迎的原因。1.Azureus:基于Java的BitTorrent客户端,名字源自一种有毒的蓝色树蛙。
2.Openbravo ERP:基于web的企业管理应用程序,类似SAP。
3.Zenoss Core:高效的企业网络管理工具。
4.Stellarium:强大的星图程序,使用OpenGL实时渲染3D太空图像。
5.ZK:易用的Ajax网页开发框架。
另IT Wire一共整理出了10大开源热门软件,除了上面的还有:
6.vMukti:网络会议软件,只能运...
2.Openbravo ERP:基于web的企业管理应用程序,类似SAP。
3.Zenoss Core:高效的企业网络管理工具。
4.Stellarium:强大的星图程序,使用OpenGL实时渲染3D太空图像。
5.ZK:易用的Ajax网页开发框架。
另IT Wire一共整理出了10大开源热门软件,除了上面的还有:
6.vMukti:网络会议软件,只能运...
标签:
java面试笔试大汇总(三)转贴
作者:duketian 日期:2007-06-22
101、remote接口和home接口主要作用
答:remote接口定义了业务方法,用于EJB客户端调用业务方法。
home接口是EJB工厂用于创建和移除查找EJB实例
102、bean 实例的生命周期
答:对于Stateless Session Bean、Entity Bean、Message Driven Bean一般存在缓冲池管理,而对于Entity Bean和Statefull Session Bean存在Cache管理,通常包含创建实例,设置上下文、创建EJB Object(create)、业务方法调用、remove等过程,对于存在缓冲池管理的Be...
答:remote接口定义了业务方法,用于EJB客户端调用业务方法。
home接口是EJB工厂用于创建和移除查找EJB实例
102、bean 实例的生命周期
答:对于Stateless Session Bean、Entity Bean、Message Driven Bean一般存在缓冲池管理,而对于Entity Bean和Statefull Session Bean存在Cache管理,通常包含创建实例,设置上下文、创建EJB Object(create)、业务方法调用、remove等过程,对于存在缓冲池管理的Be...
标签:
java面试笔试题大汇总(二)转贴
作者:duketian 日期:2007-06-22
JAVA四种基本排序的总结/ 转贴
作者:duketian 日期:2007-06-22
JAVA四种基本排序,包括冒泡法,插入法,选择法,SHELL排序法.其中选择法是冒泡法的改进,SHELL排序法是 插入法的改进.所以从根本上来说可以归纳为两种不同的排序方法:即:插入法&冒泡法
一 插入法:遍历排序集合,每到一个元素时,都要将这个元素与所有它之前的元素遍历比较一遍,让符合排序顺序的元素挨个移动到当前范围内它最应该出现的位置。交换是相邻遍历移动,双重循环控制实现.这种排序法属于地头蛇类型,在我的地牌上我要把所有的东西按一定的顺序规整,过来一个,规整一个.
处理代码如下:
[code]
public void sort(int[] data) {
int temp; ...
一 插入法:遍历排序集合,每到一个元素时,都要将这个元素与所有它之前的元素遍历比较一遍,让符合排序顺序的元素挨个移动到当前范围内它最应该出现的位置。交换是相邻遍历移动,双重循环控制实现.这种排序法属于地头蛇类型,在我的地牌上我要把所有的东西按一定的顺序规整,过来一个,规整一个.
处理代码如下:
[code]
public void sort(int[] data) {
int temp; ...
标签:
java面试笔试题大汇总(一)转贴
作者:duketian 日期:2007-06-22
JAVA相关基础知识
1、面向对象的特征有哪些方面
1.抽象:
抽象就是忽略一个主题中与当前目标无关的那些方面,以便更充分地注意与当前目标有关的方面。抽象并不打算了解全部问题,而只是选择其中的一部分,暂时不用部分细节。抽象包括两个方面,一是过程抽象,二是数据抽象。
2.继承:
继承是一种联结类的层次模型,并且允许和鼓励类的重用,它提供了一种明确表述共性的方法。对象的一个新类可以从现有的类中派生,这个过程称为类继承。新类继承了原始类的特性,新类称为原始类的派生类(子类),而原始类称为新类的基类(父类)。派生类可以从它的基类那里继承方法和实例变量,并且类可以修改或增加新的方法使之更适合...
1、面向对象的特征有哪些方面
1.抽象:
抽象就是忽略一个主题中与当前目标无关的那些方面,以便更充分地注意与当前目标有关的方面。抽象并不打算了解全部问题,而只是选择其中的一部分,暂时不用部分细节。抽象包括两个方面,一是过程抽象,二是数据抽象。
2.继承:
继承是一种联结类的层次模型,并且允许和鼓励类的重用,它提供了一种明确表述共性的方法。对象的一个新类可以从现有的类中派生,这个过程称为类继承。新类继承了原始类的特性,新类称为原始类的派生类(子类),而原始类称为新类的基类(父类)。派生类可以从它的基类那里继承方法和实例变量,并且类可以修改或增加新的方法使之更适合...
标签:
将系统移植到Spring(转贴)
作者:duketian 日期:2007-06-20
叫我来参加会议晚了,就是这次的Spring框架会议。对于你们后来的人来讲,Spring已经是一个在Apache 2.0许可下发布的基础构造代码库。它的核心是一个反转控制容器,在容器的外部开发组已经创建了JDBC和JMS代码的样板文件模板,一个web MVC框架,和其他组件。
我之所以参加这个会议晚是因为我不管Spring的成熟度和公开度,我都对它花了很长的时间进行了测试。我的问题是:"Spring到底能给我带来什么?",为了找到答案,我用Spring的组件替换了现有的一个应用的内脏。通过这次替换我懂得了:我在很早以前就应该用Spring了;应用程序的代码已经没有以前那...
我之所以参加这个会议晚是因为我不管Spring的成熟度和公开度,我都对它花了很长的时间进行了测试。我的问题是:"Spring到底能给我带来什么?",为了找到答案,我用Spring的组件替换了现有的一个应用的内脏。通过这次替换我懂得了:我在很早以前就应该用Spring了;应用程序的代码已经没有以前那...
标签: Spring
WWW15年:改变世界的15个网站
作者:duketian 日期:2007-01-30
本月,World Wide Web迎来15岁生日。在短短15年里,网络彻底地改变了我们的生活,从购物到订购飞机票,从写博客到听音乐,网络已渗透日常生活的方方面面。《观察家报》评选出了迄今为止15个最有影响力的网站。
德国人乔纳森·古腾堡在欧洲首创活字印刷术,被西方认为是印刷之父。他的印刷改变了世界,但是他却没能活着看到自己所发动的广阔革命。假如你在 1468年——古腾堡去世之时——告诉他,他于1455年出版的圣经将削弱天主教教会的权力;推动文艺复兴;使现代科学崛起成为可能;创造新的社会阶层;他将一脸茫然,不明白你在说什么。
但是,今天,就在我们中间有一个人有着与古腾堡类似的...
德国人乔纳森·古腾堡在欧洲首创活字印刷术,被西方认为是印刷之父。他的印刷改变了世界,但是他却没能活着看到自己所发动的广阔革命。假如你在 1468年——古腾堡去世之时——告诉他,他于1455年出版的圣经将削弱天主教教会的权力;推动文艺复兴;使现代科学崛起成为可能;创造新的社会阶层;他将一脸茫然,不明白你在说什么。
但是,今天,就在我们中间有一个人有着与古腾堡类似的...
标签:
ajax简单的示例
作者:duketian 日期:2007-01-30
<script language="javascript">
var http_request = false;
function send_request(url) {
//初始化、指定处理函数、发送请求的函数
http_request = false;
//开始初始化XMLHttpRequest对象
if(window.XMLHttpRequest) {
//Mozilla 浏览器
http_request = new XMLHttpRequest();
if (http_request.overr...
var http_request = false;
function send_request(url) {
//初始化、指定处理函数、发送请求的函数
http_request = false;
//开始初始化XMLHttpRequest对象
if(window.XMLHttpRequest) {
//Mozilla 浏览器
http_request = new XMLHttpRequest();
if (http_request.overr...
标签:






