1基于WEB的的固定资产管理系统的设计与实现1引言1.1系统开发背景固定资产管理对每个企业单位都是十分重要的工作,固定资产管理的好,可以使资产发挥最大效益,杜绝各种不良资产,反之则会造成生产资料利用率低下,甚至造成资产流失。本管理系统是为适应于企业的固定资产管理而开发的软件。从资产使用的角度管理固定资产,协助企业建立一套完善的数据管理模型,提供全面数据的编辑、查询、系统管理等等功能,达到对资产科学管理的目的。以前,有关资产管理的工作都是由人工来完成的。随着企业的发展,企业固定资产管理工作量大大加重。随着计算机应用的发展,急切希望能够将大部分繁琐的工作交由计算机处理,以减轻人工的压力并提高工作效率。而计算机的普及更加快了固定资产管理系统的产生。上一代的固定资产管理系统主要采用Foxbase或FoxPro技术开发实现,系统开发环境也是数据库内置的开发工具。其特点是单机单用户方式,开发简单,能充分利用数据库的特性。其缺点是开发出的系统依赖性强,运行必须依托数据库环境;不容易升级与扩展;无法实现数据的共享与并行操作;代码重用性差。原有固定资产管理系统数据共享差的问题更加突出,而新需求的提出也越来越多,越来越频繁。这就要求系统在可扩展性和标准化的要求更高。而原有的系统由于其与生俱来的缺点而无法再适应现有的需求了。因此,使用现在的新技术,开发出适应新的需求的新系统的任务刻不容缓。本系统是一个基于WEB的固定资产管理系统,是一个比较实用的系统。本系统主要提供给各企事业单位的财务部门使用,以实现其对固定资产的网络化管理,从而帮助其提高工作效率,节省人力资源和财力资源。基本能够满足目前出现的新需求。21.2系统功能本系统要实现的主要功能包括:(1)资产类型管理。(2)来源方式管理(3)用户管理(4)借出管理(5)存放位置管理(6)资产管理(7)目的管理(8)模型管理(9)使用期限管理2关键技术的比较分析与开发工具的选择在开发本系统时所使用的开发工具包括:J2DK1.6.0软件开发包,MicrosoftSQLServer2000数据库,Eclipse3.2.0集成开发环境,Tomcat5.5.20(运行JSP的服务器)。2.1JSP介绍2.1.1什么是JSPJSP是JavaServerPages的缩写,是由SUN公司倡导,许多公司参与,于1999年推出的一种动态网页标准。JSP是基于Javaservlet以及整个Java体系的web开发技术,利用这3一技术可以建立安全的、跨平台的先进动态网站,并且这项技术还在不断的被更新和优化。JSP和ASP技术非常相似,ASP的编程语言是VBScript和JavaScript,JSP使用的是Java。与ASP相比,JSP以Java技术为基础,又在许多方面做了改进,具有动态页面与静态页面分离,能够脱离软件平台的束缚,以及编译后运行等优点,克服了ASP脚本级执行的缺点,因而逐渐成为Internet上的主流开发工具。JSP综合了中间件和Java的优点,前者的优点在于可以使程序访问异构的数据库,而不必对应用程序作出改动;后者的优点在于具有平台无关性,不需要为不同平台编写不同的应用程序。即同样的程序可以在Windows环境下运行,也可以在Unix或者Linux下运行。JSP的工作方式为:客户端浏览器首先访问Web服务器,从Web服务器上下载Java小程序Applet的字节码文件以及相关类和JDBC接口的字节码文件;然后Applet根据数据库服务器的地址、端口号、帐号和数据库服务器连接,进行交互操作。由于JSP技术有可操作性、可维护性、安全性、高效性等一系列优良特性,因此和其它中间件技术相比,有很大的优势。2.1.2JSP页面JSP页面是web开发人员使用JSP内置标签和自定义标签,结合其他静态标签(HTML或XML标签)生成的页面。JSP页面的扩展名为.jsp或.jspx,web服务器通过此扩展名通知JSP引擎处理该页面中的元素。通过部署描述文件web.xml,也可使用其他扩展名和JSP引擎联系。通过JSP引擎解释JSP页面中的标签,生成所需内容。例如,调用一个bean来访问一个使用JDBCAPI的数据库或者是包含一个文件。然后JSP引擎把返回的结果以HTML(或XML)页面的形式发送到浏览器。实质上是把生成内容的业务逻辑封装在服务器端处理的标签和beans中。JSP页面通常被编译成Java平台servlet类。因此,JSP页面的运行需要有能支持Java平台servlet规范的Java虚拟机。JSP页面实际上只是在第一次被调用的时候被编译一次。页面被编译成JavaServlet类,并驻留在服务器内存中,4这样以后调用该页面时将很快。JSP规范支持XML文档的创建。对于简单的XML文档生成,XML标签将以静态的部分包含在JSP页面中。动态的XML生成则需要使用bean组件或者自定义标签来实现。JSP2.0规范描述了JSP页面和XML文档之间的映射。通过该映射可以使用XML工具来生成和处理JSP页面。JSP规范包括了标准的标签,用于使用和处理bean。使用useBean标签生成一个特定JavaBeans的实例。如果这个类的实例已经存在,则直接使用。否则,创建一个新的实例。setProperty和getProperty标签允许您操作给定对象的属性。在传统的HTML页面文件中加入Java程序片和JSP标签就构成了一个JSP页面文件,简单的说,一个JSP页面除了HTML标记符外,再使用标记符号“%”和“%”,并在其间插入Java程序代码。JSP页面文件的扩展名是JSP,文件的名字必须符合标识符规定,由于JSP是基于Java语言,所以其名字区分大小写。Java技术有着自己鲜明的特色:简单性、面向对象、分布方式、安全性、与平台无关性、多线性、动态性。Java的安全性很值得一提,它通过本身的安全机制就防止了病毒程序的产生和下载程序对本文件系统的破坏。?在进行Java技术研究时,发现Java的文件结构虽然是公开的,但是要插入自己的代码不太可能。采用Applet的方式,它的安全性可以说是很高的,想访问本地资源不太容易,要经过本地的很多认证。最为重要的是Java编译器并不处理内存布局,程序员无法从类的定义中推断出运行时的实际内存布局,从而无法用Java程序对系统进行破坏。Java的资源访问将文件夹、网络资源统一起来,使很多访问变得简单。为大型的应用打下了基础,也为不同软件之间的信息交换提供了方便,比如URL、SOCKET、TEP/IP协议、邮件协议等等。2.1.3JSP的运行原理当服务器上的第一个JSP页面被请求执行时,服务器上的JSP引擎首先将一个JSP页面5转换成一个Java文件,再将这个Java文件编译生成字节码文件,然后通过执行字节码文件响应客户的请求,而当这个JSP页面再次被请求执行时,JSP引擎将直接执行这个字节码文件来响应客户请求。JSP页面的首次执行往往由服务器管理者来执行。这个字节码文件的主要工作是:(1)把JSP页面中普通的HTML标记符号(JSP页面中的静态部分)交给客户端的浏览器负责显示。(2)执行“%”和“%”标记之间的Java程序片(JSP中的动态部分),并把执结果交给客户端的浏览器显示。(3)当多个客户请求一个JSP页面时,JSP为每一个客户启动一个线程,这些线程由JSP引擎服务器来管理,与传统的CGI为每一个客户启动一个进程相比较,其效率要高得多。2.1.4JavaBeansJavaBean组件可以用来执行复杂的计算任务,或负责与数据库的交互以及数据提取等,并且它们与应用本身相分离。JavaBean技术类似于ActiveX控件,是一种Java类(class),通过封装属性和方法成为具有某种功能或者处理某个业务的对象并且可以重复使用。在JSP网页中要使用JavaBean技术需要三个步骤,第一:定义JavaBean组件,并以PackageName为类名,即把可重用的Java代码放入类中,生成.java的文件;第二:将定义的类用javac命令编译生成.class的JavaBean类文件;第三:在JSP网页中调用JavaBean组件。(1)定义JavaBean并保存为YYYY.java:packageXXX;6publicclassYYYY{***}(2)编译:javacYYYY.java,生成YYYY.class(3)调用JavaBean:jsp:useBeanid=″KKK″scope=″session″class=″XXX.YYYY″/。一旦你声明了一个JavaBean,你就可以访问它的属性来定制它。按照SUN公司的定义,JavaBeans是一个可重复使用的软件组件。实际上JavaBeans是一种Java类,通过封装属性和方法成为具有某种功能或者处理某个业务的对象,简称beans。JavaBeans基于Java语言,具有以下特点:(1)可以实现代码重复利用。(2)易编写、易维护、易使用。(3)可以在任何安装了Java平台的机器上使用。2.1.5JDBC与JDBC-ODBCBridge技术JDBC(JavaDatabaseConnectivity)是Java中连接数据库的接口技术,是开放数据库互联ODBC的Java实现。我们知道,作为数据库前端应用的SQL语言是一种非过程描述的语言,除数据库操作外,它所能完成的功能非常有限,并不能适应整个前端应用编程。为解决此问题,Java中专门设置了一个java.sql包,该包里定义了很多用来实现SQL功能的类,利用这些类就可以方便地开发数据库的应用程序。这种帮助Java实现数据库功能的技术称为JDBC。目前很多数据库系统带有JDBC驱动程序,Java程序就通过JDBC驱动程序与数据库相连,执行查询,提取数据等等。Sun公司还开发了JDBC-ODBCbridge,用此技术可实现JDBC7到ODBC的转化,这样Java程序就可以访问带ODBC专用驱动程序的数据库,目前很多数据库系统都带有ODBC驱动程序,所以Java程序能访问诸如Oracle、Sybase、MSSQLServer和MSAccess等。此外JDBC还可以与一种通用的数据库协议驱动程序相连,然后再利用中间件和协议解释器将这个协议驱动程序与某种具体的数据库系统相连。JDBC接口分为两个层次,一个是面向程序开发人员的JDBCAPI,另外一个是底层的JDBCDriverAPI。前者是开发人员用来编写前端应用程序的,后者是由数据库厂商或专门的驱动程序生产厂商开发的。开发人员必须掌握JDBCAPI的几个重要接口的使用,如下:java.sql.DriverManager:管理驱动的调入并对新产生的数据库连接提供支持;java.sql.Connection:创建连接对象,完成与远程特定数据库的连接;ava.sql.Statement:创建Statement对象,包装欲执行的SQL语句;java.sql.ResultSet:执行SQL语句,将执行结果放入新建的ResultSet类的对象。而JDBCDriverAPI必须提供对上述接口的支持。2.2MicrosoftSQLServer2000介绍MicrosoftSQLServer2000是一个关系型数据库管理系统(RelationalDataBaseManagementSystem,RDBMS),它为大型商业组织提供数据存储和管理服务,以及为Internet的用户提供数据访问支持。它也为较小的组织和个人提供简单的数据访问能力。MicrosoftSQLServer2000接收并执行客户端的数据添加、修改、删除请求以及创建数据库及表之类的对象命令。MicrosoftSQLServer2000允许用户按照关系方法检索和组织数据,并以行和列的形式有效的存储数据。客户端命令作为Transact-SQL(T-SQL)语句被发送。MicrosoftSQLServer2000所使用的T-SQL是一种脚本语言,它用于查询数据库或者修改数据库的内容。MicrosoftSQLS