综合课程
设计
领导形象设计圆作业设计ao工艺污水处理厂设计附属工程施工组织设计清扫机器人结构设计
报告
软件系统测试报告下载sgs报告如何下载关于路面塌陷情况报告535n,sgs报告怎么下载竣工报告下载
格式
题目:
班级:
姓名:
学号:
指导教师:
完成日期: 年 月 日
评语
课程设计任务内容
本系统要实现的功能是管理员可以对实验室设备信息进行查询及相关实验室设备的使用情况查看,可以根据本人用户名和密码登录系统。在信息系统中,后台数据库存储的地位相当重要(本系统采用了MYSQL数据库book,库中包括设备信息表、教师信息表、借用设备表、损坏设备表、归还设备表、报废设备表、用户登陆表。系统首先必须维护实验室中详细资料的数据表,程序能对该表进行写入和读出数据的操作。
实验室设备管理需要完成的功能主要如下:
1) 设备管理:实现仓库中的每样设备信息的登记和新设备的入库登记,旧设备的报修、报废处理,以及设备状态的更改。
2) 设备的借出:按照教师所需设备而给予借出,并在数据库中更改这些设备的使用状态。
3) 设备的归还:按照教师所还设备而进行入库登记,并在数据库中更改这些设备的使用状态。
4) 设备报修:实验人员在实验过程中如果发现设备损坏,通过此系统报告给管理员,同时改写数据库中的设备状态。
目录
第一章 系统概述 ................................................................5 1.1系统开发背景 ..................................................................... 5 1.2项目设计基本原理 ................................................................. 6 1.3数据库系统设计及范式分析 ......................................................... 6 第二章 系统需求分析 ............................................................7 2.1可行性研究 ....................................................................... 7 2.2需求分析 ......................................................................... 9 2.3数据描述 ........................................................................ 11 第三章 总体设计 ............................................................... 13 3.1总体设计原理 .................................................................... 13 3.2运行环境与系统结构 .............................................................. 14 3.3系统功能模块与设计 .............................................................. 14 3.4系统功能模块说明 ................................................................ 14 3.5系统功能模块图 .................................................................. 16 第四章 详细设计............................................................... 17 4.1数据库的概念设计 ................................................................ 17 4.1.1局部E-R模式设计 .............................................................. 17 4.1.2全局E-R设计 .................................................................. 21 4.1.3数据库实现 .................................................................... 22
第五章 详细设计............................................................... 20 5.1全局E-R设计 .................................................................... 20 5.2编码实现与测试用例设计 .......................................................... 21 第五章 系统总结............................................................... 28 6.1总结 ............................................................................ 28 6.2系统不足 ........................................................................ 35 参考文献 ........................................................................ 36
第一章 系统概述
1.1系统开发背景
一个现代化的实验室设备系统在正常运行中总是面对大量的使用者,
仪器以及两者相互作用产生的借用仪器。人工管理既浪费人力物力财力,
又容易导致各种错误的发生。为了方便实验室管理,得开发一个更好更高
效的软件来管理。实验室管理系统,是为了实现实验室管理而设计的,它
也是现在各个部门的一个重要环节。
实验室是所有高校、研究机构必不可少的基本构成单位。特别是高校,
实验室的设备管理需要一套稳定、高效的
管理办法
关于高温津贴发放的管理办法稽核管理办法下载并购贷款管理办法下载商业信用卡管理办法下载处方管理办法word下载
。就我校情况看来,目
前我校的实验室设备管理还处于较原始的手工阶段,缺少一套实用可靠的
管理系统软件。随着电气化教学和无纸化办公的一步步完善,利用计算机
管理系统管理我校的实验室设备势在必行。因此,本项目拟开发一个实验
室设备管理系统。
本系统将建立一个实验室设备管理平台,记录实验室所有的实验设
备,并及时反应设备的运转状况,使用情况,以供本科生和研究生及其他
试验人员合理的安排实验,达到工作效率的最优。
1.2项目设计基本原理
软件工程是一门从技术和组织管理两个角度研究如何用系统化、
规范
编程规范下载gsp规范下载钢格栅规范下载警徽规范下载建设厅规范下载
化和数量化等工程原理也方法去进行软件开发和维护的学科。软件工程学研究的范围非常广泛,包括技术方法、工具和管理等许多方面。软件生命周期的各个阶段可分为:
采用软件工程的技术方法开发本系统,通过以上八个阶段组成软件的生存期,它是指从提出开发要求开始直到该软件报废为止的整个时期。分阶段进行,就把规模庞大、结构复杂和管理复杂的软件变的容易控制和管理。基于此思想,本系统开发实际可行的软件,方便毕业时信息的管理。
1.3数据库系统设计及范式分析
数据库设计主要是进行数据库的逻辑设计,即将数据按一定的分类、分组系统和逻辑层次组织起来,是面向用户的。数据库设计时需要综合企业各个部门的存档数据和数据需求,分析各个数据之间的关系,按照DBMS提供的功能和描述工具,设计出规模适当、正确反映数据关系、数据冗余少、存取效率高、能满足多种查询要求的数据模型。
数据库设计的步骤是;
1数据库结构定义:目前的数据库管理系统(DBMS)有的是支持联机事务处理CLTP(负责对事务数据进行采集、处理、存储)的操作型DBMS,有的可支持数据仓库、有的联机分析处理CLAP(指为支持决策的制度对数据的一种加工操作)功能的大型DBMS,有的数据库是关系型的,有的可支持面向对象数据库。针对选择的DBMS,进行数据库结构定义。
2数据表定义:数据表定义指定义数据库中数据表的结构,数据表的
逻辑结构包括:属性名称、类型、表示形式、缺省值、效验规则、是否关键字、可否为空等。关系型数据库要尽量按关系规范化要求进行数据库设计,但为使效率高,规范化程序应根据应用环境和条件来决定。数据表设计不仅要满足数据存储的要求,还要增加一些如反映有关信息、操作责任、中间数据的字段或临时数据表。
3存储设备和存储空间组织:确定数据的存放地点、存储路径、存储设备等,备份
方案
气瓶 现场处置方案 .pdf气瓶 现场处置方案 .doc见习基地管理方案.doc关于群访事件的化解方案建筑工地扬尘治理专项方案下载
,对多版本如何保证一致性和数据的完整性。
4数据使用权限设置:针对用户的不同使用要求,确定数据的用户使用权限,确保数据安全。
5数据字典设计:用数据字典描述数据库的设计,便于维护和修改。
第二章 系统需求分析 2.1可行性研究
2.1.1技术可行性
一个完备的实验室设备管理信息系统具有以下优越性:
方便校领导查询实验室设备的使用情况,节省时间,可以提高系统的工作效率和准确率。为了适应新形势的发展,我进行了这一系统的初步设计工作,也可以说是做一个初步的探索,希望它能够在查询实验室设备信息时发挥高效、便捷的作用,把系统管理员从繁重的工作中解脱出来~
该实验室设备管理信息系统是以MYSQL数据库为后台核心应用、以服务为目的信息平台,对资源进行科学的加工整序和管理维护,为实验室设备信息提供管理。
2.1.2经济可行性
经济可行性主要依据是成本/效益分析,该系统的目标是以最低的成本,在最短的期限内开发出实验室设备管理信息系统。系统能减少很多不必要的资源,不用象以前那样用冗余的纸张式的管理。大大节省了学校能源。并且还提高了实验室设备信息管理的精确度。
方便快速的操作,可减少实验室设备信息管理的漏洞,又减少因工作的冗余出现的错误,并且操作非常简单,可减少许多不很必要的人员,这无论从物质上海是工作人员的工资上都为学校节约了开支。为学校增加了财富。
目标系统开发需求比较低,加上具有成熟的软硬件环境,所以在软硬件的支出上比较低,在为使用者带来便利的同时,也问哦系统的进一步推广创造了条件。这带来的经济回报将远超过支出,并且最重要的是该软件的开发可以使我们对系统的开发有全面的认识。从经济角度考虑,此实验室设备管理信息系统开发可行。
2.1.3操作可行性
用户仅需具有基本的电脑操作能力即可。
2.1.4社会因素可行性
从法律因素和安全用正版和免费角度考虑,所有技术参考资料都经授权,所有软件都选。
2.1.5可行性研究结论
依据以上因素,本实验室设备管理信息系统开发项目不仅方便快捷、高效,而且社会效益比较好从而使本系统开发者相信该系统开发出来之后将取得成功。
综上所述,此项目在技术、经济、操作和社会效益上是完全可行的。 2.2需求分析
2.2.1系统目的
21世纪以来,人类经济高速发展,人们发生了日新月异的变化,特别是计算机的应用及普及到经济和社会生活的各个领域。使原本旧的管理方法越来越不适应现在社会的发展。许多人还停留在以前的手工操作。这大大的阻碍了人类经济发展。为了适应现代社会人们高度强烈的时间观念,学校实验室设备信息管理系统软件为学校实验室带来极大的方便。
学校的规模不断扩大,实验室设备数量急剧增加,有关实验室设备的各个信息也成倍增加。面对庞大的信息量,需要有专门的实验室设备管理系统来提高工作的效率。本系统为实验室设备管理信息系统,通过这样的系统,可以做到信息的规范管理,快速查询实验室设备的就业信息。其开发主要包括数据库的建立和维护以及前端应用程序的开发两个方面。 2.2.2系统功能及用户需求分析
管理员可以对实验室设备信息进行查询及相关实验室设备的使用情况查看。管理员可以根据本人用户名和密码登录系统。在信息系统中,后台数据库存储的地位相当重要,数据库的设计不但对数据的操作速度有影
响,还直接关系到软件系统的质量和生存周期。本系统采用了SQL数据库book,book库中包括教师信息表、借用设备表、仪器表、用户登陆表。系统首先必须维护实验室中详细资料的数据表,程序能对该表进行写入和读出数据的操作,相应的,该表还有记录读者的借用情况,系统通过该表判断读者是否满意借用条件。系统还要管理员信息表,记录管理员的资料,检验管理员的登陆,管理员的权限等。
1功能需求
1)设备预定:实现实验人在系统平台上查询库内实验设备的状态及在某一时段的使用状况,若无损坏且未被预定使用,则用户可预定使用。
2)设备管理:实现现在仓库中的每样设备信息的登记和新设备的入库登记,旧设备的报修、报废处理,以及设备状态的更改。
3)设备的借出:按照教师所需设备而给予借出,并在数据库中更改这些设备的使用状态。
4)设备的归还:按照教师所还设备而进行如库登记,并在数据库中更改这些设备的使用状态。
5)设备报修:实验人员在实验过程中如果发现设备损坏,通过此系统报告给管理员,同时改写数据库中的设备状态。
2.3数据描述
2.3.1数据流图
类别/时间段 P 2.2
设备查询
管理员登P 2.3 录 借用设备
P 2.1
用户 用户登录 管理员 P 2.4
归还设备 反馈 设备信息
P 2.5
设备审核
设备使用状况
报废信息
P 2.6
采购部 报废设备
处理
2.3.2数据字典
数据字典是关于数据的信息的集合,也就是对数据流图中包含的所有元素的定义的集合。数据流图和数据字典共同构成系统的逻辑模型。
下面用数据字典来定义数据流图中各元素的确切内容:
设备:实验室设备信息表别名
定义:实验室设备信息表=类别+型号+规格+购买每个设备的价格+单价数量+购置日期间+生产厂家+生产厂商+购买人保修时间+是否贵重设备+责任人
描述:实验室每种设备的详细信息
位置:equipment.mdb 数据库
归还:归还设备信息表
描述:记录所有已归还设备的情况
定义:归还信息表=编号+设备名+型号+规格+数量+单价+借出日期+生产厂家
位置:return数据库
维修:实验室中损坏的信息
描述:记录实验室中损坏的设备以及归还设备中损坏的信息
定义:损坏信息表=编号+设备名+型号+规格+数量+单价+生产厂家+损坏的责任人
位置:repaire数据库
报废:实验室中损坏但是修理不好的设备信息
描述:记录实验室中没有使用价值的设备
定义:报废设备信息表=编号+设备名+型号+规格+数量+单价+生产厂家
位置:throw数据库
人员:使用实验室设备的所有教师
描述:记录所有使用设备的所有教师信息
定义:人员信息=教师姓名+教师性别+教师学历+部门名称+权限类别+电话号码+登记日期
位置:teacher数据库
系统管理员:管理实验室设备的人
描述:对整个实验室设备进行管理,包括对设备进行查询、删除、更新操作的人
定义:管理员信箱=用户名+密码+权限
位置:management数据库
第三章 总体设计
3.1总体设计原理
总体设计的基本目的就是回答“系统应该如何实现,”这个问题。因此总体设计又称为概要设计或初步设计。通过这个阶段的工作将划分出组成系统的物理元素—程序、文件、数据库、人工过程和文档等等,但是每个物理元素仍然处于黑盒子级,这些黑盒子里的具体内容将在以后仔细设计。总体设计阶段的另一项重要任务是设计软件的结构,也就是要确定系统中每个程序是由哪些模块组成的,以及这些模块相互之间的关系。
总体设计工程通常有两个主意阶段组成:系统设计,确定系统的具体实现方案;结构设计确实软件结构,也就是要确定系统中每个程序拥有哪些模块组成的,以及这些模块之间的关系。在详细设计之前进行总体设计可以站在全局的高度上,花较少的成本,从中选出最佳方案和最合理的软
件结构,从而用较低的成本开发出高质量的软件系统。
3.2运行环境与系统结构
为了保证系统运行的效率和可靠性,系统服务器端应具有较高的软硬件配置,客户端的要求不是很高。此应用程序可广泛用于内部的局域网。 3.3系统功能模块与设计
模块化就是把程序划分成独立命名且可独立访问的模块,每个模块完成一个子功能,把这些模块集成起来构成一个整体,可以完成指定的功能满足用户的需求。
采用模块化原理可以使软件结构清晰,不仅容易设计也容易阅读和理解。因为程序错误常局限在有关的模块及它们之间的接口中,所以模块化使软件容易测试和调试,因而有助于提高软件的可靠性。一个好的电子系统要有一些必要的模块组成,若缺少了某些模块那么这个系统就会有缺陷。
3.4系统功能模块说明
1新进设备状态查询:
1)待效验 2)效验通过 3)效验失败 4)待登记 5)登记成功 6)
登记失败
2现有设备管理:
1)损坏设备报修
? 记录修理日期、设备名、修理厂家、修理费、责任人
? 于统计栏记录备案
2)设备报废
? 记录报废原因、责任人及相关信息
? 于统计栏记录备案
3)维修返回登记
? 加入“现有设备统计”
? 统计栏记录备案
4)设备出入统计
? 统计记录资料并规范格式
? 查询设备维修、报废统计
? 打印设备维修、报废统计表 3急需设备购进
1)生成购买申请表 2)打印表格 3)登记设备详细资料,同时更新申请
表内容
4管理员验证登陆
1) 创立/修改管理员
? 登记管理员资料 ?修改管理员资料 ?删除管理员资料
2)创建/修改管理员密码
? 新建管理员密码 ?修改管理员密码 3)验证登录
? 登录方式判断 ?以浏览方式登录,禁止修改数据但可以浏览 ?
管理员登录密码验证
3.5系统功能模块图
设备查询管理 实按编号查询
验
室现有设备管理 设
备
管设备购进管理 理
系
统 设备使用管理
第四章 概念设计
4.1数据库的概念设计
根据对数据流图和数据字典的分析,确定该应用中的实体、属性和实体之间的联系,并画出系统总体的E-R图。概念设计可分为三步进行:首先设计局部E-R模式,然后把各局部E-R模式综合成一个全局模式,最后对全局E-R模式进行优化,得到最终的模式,即概念模式。 4.1.1局部E-R模式设计
实体和属性的定义。E-R模型的“联系”用于刻画实体之间的关联。一种完整的方式是对局部结构中任意两个实体类型,依据需求分析的结果,考察局部结构中任意两个实体类型之间是否存在联系。若有联系,进一步确定是1:N,M:N,还是1:1等,还要考察一个实体类型内部是否存在联系,两个实体类型之间是否存在联系,多个实体类型之间是否存在联系等等。
1局部E-R模式的合并
合并的原则是:首先进行两两合并,先合并那些现实世界中有联系的局部结构,合并从公共实体类型开始,最后再加入独立的局部结构。 2消除冲突
冲突分为三类:属性冲突,结构冲突,命名冲突。
设计全局E-R模式的目的不在于把若干局部E-R模式形式上合并为一个E-R模式,而在于消除冲突,使之成为能够被所有用户共同理解和接受的同一概念模型。
3全局E-R模式的优化
在得到全局E-R模式后,为了提高数据库系统的效率,还应进一步依据处理需求对E-R模式进行优化,一个好的全局E-R模式,除能准确、全面的反映用户功能需求外,还应满足下列条件:实体类型的个数要尽可能的少,实体类型所含属性个数尽可能少,实体类型间联系无冗余。 1) 实验室设备信息E-R图,如下图所示。
图 4.1 实验室设备信息E-R图
2)使用设备的教师信息E-R图,如下图所示。
图 4.2 使用设备的教师信息E-R图 3)借用设备E-R图,如下图所示。
图 4.3 借出设备E-R图 4)归还设备E-R图,如下图所示。
图 4.4 归还设备E-R图 5)报废设备E-R图,如下图所示。
图 4.5 报废设备E-R图 6)损坏设备E-R图,如下图所示。
图4.6 损坏设备E-R图
7)管理员E-R图,如下图所示。
图4.7 管理员E-R图
4.1.2 E-R图模型转成关系模型:
E-R图模型转成关系模型:
1设备信息(设备编号,设备名称,价格,生产厂家,设备数量,借出数量,备注,设备状况,启用日期,报废数量)
2借用设备(设备编号,设备名称,借用人,借用数量,用途,借用日期,归还日期,经手人,备注)
3教师信息(教师姓名,性别,教师学历,权限类别,电话号码,登记日期,部门名称)
4管理员(用户名,密码,权限)
5损坏设备(设备编号,设备名称,设备型号,设备类别,单价,数量,规格,生产厂家,损坏负责人,损坏程度)
6报废设备(设备编号,设备名称,设备型号,规格,数量,单价,生产厂家)
7归还设备(设备编号,设备名称,设备型号,规格,数量,单价,生产
厂家,借出日期,何人借出)
4.1.3数据库实现
基本表如下:
1)设备信息表
2)借用设备表
3)教师信息表
4)损坏设备表
5)报废设备表
6)归还设备表
各表联系图
第五章 详细设计
5.1全局E-R设计
所有局部E-R模式都设计好后,接下来就是把它们综合成单一的全局概念结构。全局概念结构不仅要支持所有局部E-R模式,而且必须合理的表示一个完整、一致的数据库概念结构。如下图所示。
设备借出信息 使用设备的教师信息
使用
借出 管理员 实验室设备信息 管理
设备归还信息 记录 设备损坏信息
设备报废信息
系统总体E-R图
5.2编码实现与测试用例设计
5.2.1登录界面
运行本系统程序,首先出现登录界面,输入正确的用户名和密码之后进入主窗体
数据库的链接操作代码如下:
package org.mm.mldn.dbc;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
public class DataBaseConnection {
// 定义MySQL的数据库驱动程序
public static final String DBDRIVER = "org.gjt.mm.mysql.Driver" ;
// 定义MySQL数据库的连接地址
public static final String DBURL = "jdbc:mysql://localhost:3306/mldnl" ;
// MySQL数据库的连接用户名
public static final String DBUSER = "root" ;
// MySQL数据库的连接密码
public static final String DBPASS = "liyunfei" ;
private Connection conn = null;
public DataBaseConnection(){
try {
Class.forName(DBDRIVER);
} catch (ClassNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
try {
conn = DriverManager.getConnection(DBURL,DBUSER,DBPASS);
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
public Connection getConnection(){
return this.conn;
}
public void close(){
if(this.conn != null){
try {
this.conn.close();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
}
5.2.2主界面
主界面的菜单栏包含的主要菜单有实验设备、仪器管理、人员管理、借用仪器、查询信息和帮助.
图5.2.2主界面窗体
5.2.3主要功能模块代码
package org.mm.mldn.dao.impl;
import java.sql.Connection;
import java.sql.PreparedStatement; import java.sql.ResultSet;
import java.util.ArrayList;
import java.util.List;
import org.mm.mldn.dao.IAdInfoDAO; import org.mm.mldn.dbc.DataBaseConnection; import org.mm.mldn.vo.AdInfo;
public class IAdInfoDAOImpl implements IAdInfoDAO {
private DataBaseConnection dbc = null;
private Connection conn = null;
public IAdInfoDAOImpl(Connection conn) {
this.conn = conn;
}
public boolean doCreate(AdInfo adInfo) throws Exception {
boolean flag = false;
PreparedStatement pstmt = null;
String sql = "insert into AdInfo(ad_id,ad_name,price,factary," +
"ad_no,lend_no,ad_zk,bad_no,use_data,bz)VALUES (?,?,?,?,?,?,?,?,?,?) ";
try {
pstmt = this.conn.prepareStatement(sql);
pstmt.setString(1, adInfo.getAd_id());
pstmt.setString(2, adInfo.getAd_name());
pstmt.setString(3, adInfo.getPrice());
pstmt.setString(4, adInfo.getFactary());
pstmt.setInt(5, adInfo.getLend_no());
pstmt.setInt(6, adInfo.getAd_no());
pstmt.setString(7, adInfo.getAd_zk());
pstmt.setInt(8, adInfo.getBad_no());
pstmt.setDate(9, new java.sql.Date(adInfo.getUse_data().getTime()));
pstmt.setString(10, adInfo.getBz());
if (pstmt.executeUpdate() > 0) {// 至少已经更新了一行
flag = true;
}
else{
flag = false;
}
} catch (Exception e) {
throw e;
} finally { // 不管如何抛出,最终肯定是要进行数据库的关闭操作的
if (pstmt != null) {
try {
pstmt.close();
} catch (Exception e1) {
}
}
}
return flag;
}
public boolean doDelete(String ad_id) throws Exception {
boolean flag = false;
PreparedStatement pstmt = null;
String sql = "delete from adInfo where ad_id = ? ";
try {
pstmt = this.conn.prepareStatement(sql);
pstmt.setString(1,ad_id);
if (pstmt.executeUpdate() > 0) {// 至少已经更新了一行
flag = true;
}
} catch (Exception e) {
throw e;
} finally { // 不管如何抛出,最终肯定是要进行数据库的关闭操作的
if (pstmt != null) {
try {
pstmt.close();
} catch (Exception e1) {
}
}
}
return flag;
}
public boolean doUpdate(AdInfo adInfo) throws Exception {
boolean flag = false;
PreparedStatement pstmt = null;
String sql = "UPDATE adInfo SET
ad_name=?,price=?,factary=?,ad_no=?,lend_no=?," +
"ad_zk=?,bad_no=?,use_data=?,bz=? WHERE ad_id=?";
try {
pstmt = this.conn.prepareStatement(sql);
pstmt.setString(1, adInfo.getAd_name());
pstmt.setString(2, adInfo.getPrice());
pstmt.setString(3, adInfo.getFactary());
pstmt.setInt(4, adInfo.getAd_no());
pstmt.setInt(5, adInfo.getLend_no());
pstmt.setString(6, adInfo.getAd_zk());
pstmt.setInt(7, adInfo.getBad_no());
pstmt.setDate(8, new java.sql.Date(adInfo.getUse_data().getTime()));
pstmt.setString(9, adInfo.getBz());
pstmt.setString(10, adInfo.getAd_id());
if (pstmt.executeUpdate() > 0) {// 至少已经更新了一行
flag = true;
}
} catch (Exception e) {
throw e;
} finally { // 不管如何抛出,最终肯定是要进行数据库的关闭操作的
if (pstmt != null) {
try {
pstmt.close();
} catch (Exception e1) {
}
}
}
return flag;
}
public AdInfo find_adId(String ad_id) throws Exception {
AdInfo adInfo = null ;
PreparedStatement pstmt = null;
String sql = "SELECT ad_id,ad_name,price,factary," +
"ad_no,lend_no,ad_zk,bad_no,use_data,bz FROM adInfo WHERE
ad_id=?";
try {
pstmt = this.conn.prepareStatement(sql);
pstmt.setString(1, ad_id) ;
ResultSet rs = pstmt.executeQuery(); // 执行查询操作
if (rs.next()) {
adInfo = new AdInfo();
adInfo.setAd_id(rs.getString(1));
adInfo.setAd_name(rs.getString(2));
adInfo.setPrice(rs.getString(3));
adInfo.setFactary(rs.getString(4));
adInfo.setAd_no(rs.getInt(5));
adInfo.setLend_no(rs.getInt(6));
adInfo.setAd_zk(rs.getString(7));
adInfo.setBad_no(rs.getInt(8));
adInfo.setUse_data(rs.getDate(9));
adInfo.setFactary(rs.getString(10));
}
rs.close() ;
} catch (Exception e) {
throw e;
} finally { // 不管如何抛出,最终肯定是要进行数据库的关闭操作的
if (pstmt != null) {
try {
pstmt.close();
} catch (Exception e1) {
}
}
}
return adInfo;
}
public int find_No(String ad_id) throws Exception {
AdInfo adInfo = null ;
int no=0;
PreparedStatement pstmt = null;
String sql = " select ad_no-lend_no-bad_no from AdInfo where ad_id=?";
try {
pstmt = this.conn.prepareStatement(sql);
pstmt.setString(1, ad_id) ;
ResultSet rs = pstmt.executeQuery(); // 执行查询操作
adInfo = new AdInfo();
adInfo.setAd_no(rs.getInt(1));
adInfo.setLend_no(rs.getInt(2));
adInfo.setBad_no(rs.getInt(3));
rs.close() ;
} catch (Exception e) {
throw e;
} finally { // 不管如何抛出,最终肯定是要进行数据库的关闭操作的
if (pstmt != null) {
try {
pstmt.close();
} catch (Exception e1) {
}
}
}
return no;
}
public List
findAll(String KeyWord) throws Exception {
// TODO Auto-generated method stub
List all = new ArrayList();
PreparedStatement pstmt = null;
String sql = "SELECT ad_id,ad_name,price,factary,ad_no,lend_no," +
"ad_zk,bad_no,use_data,bz FROM adInfo WHERE ad_name=? OR
ad_id like ? OR price like ? OR use_data like ?";
try {
pstmt = this.conn.prepareStatement(sql);
pstmt.setString(1, "%" + KeyWord + "%");
pstmt.setString(2, "%" + KeyWord + "%");
pstmt.setString(3, "%" + KeyWord + "%");
pstmt.setString(4, "%" + KeyWord + "%");
ResultSet rs = pstmt.executeQuery(); // 执行查询操作
while (rs.next()) {
AdInfo adInfo = new AdInfo();
adInfo.setAd_id(rs.getString(1));
adInfo.setAd_name(rs.getString(2));
adInfo.setPrice(rs.getString(3));
adInfo.setFactary(rs.getString(4));
adInfo.setAd_no(rs.getInt(5));
adInfo.setLend_no(rs.getInt(6));
adInfo.setAd_zk(rs.getString(7));
adInfo.setBad_no(rs.getInt(8));
adInfo.setUse_data(rs.getDate(9));
adInfo.setBz(rs.getString(10));
all.add(adInfo); // 所有的内容向集合中插入
}
rs.close() ;
} catch (Exception e) {
throw e;
} finally { // 不管如何抛出,最终肯定是要进行数据库的关闭操作的
if (pstmt != null) {
try {
pstmt.close();
} catch (Exception e1) {
}
}
}
第六章 系统总结 6.1 总结
基于JSP技术利用工厂模式开发的B/S模式的实验设备管理系统,不仅很好的克服了现阶段实验设备管理的局限和不足,减轻了实验室管理人员的工作量,他们仅承担仪器设备信息输入的任务,其他工作都由服务器端的JavaBean组件来完成,实现了设备管理人员可随时随地维护实验室信息,实现了信息的实效性、网络化和规范化,同时,有利于业务部门及时了解设备仪器的使用情况,充分利用有限资源,最大程度的实现了资源的共享。
6.2 系统不足
本系统主要完成了实验室管理中的一些基本的功能,如:借出和归还、设备类别和信息的添加、删除和修改、教师人员使用设备的添加、删除和修改,还有对管理员的添加和密码的修改等。本系统使用的是本地的数据库MYSQL.本项目还有许多地方要进行改进。
本系统的设计已经初步完成,由于时间的仓促以及经验的不足,难免存在许多问题,这就需要在今后的实践中加以修改和完善。本系统经过调试后,应该说基本上是可行的。在程序设计中,我觉得测试是一个复杂而重要的步骤,应认真对待,当一个功能或一个函数过程完成后,必须认真测试,同时了解到程序清单的布局对于程序的可读性也有很大影响,利用适当的阶梯形式可以使程序的层次结构清晰明显,还有经常做好一些代码的注释,这样对自己或别人检查程序时带来很大方便。
参考文献
[1]Time研究室.萧仁辉.陈锦辉主编.JDBC数据库程序设计教程.中国铁道
出版社,2004年
[2]王西宁.王晓平.JSP通用模块及典型系统开发实例导航.北京邮电出版社,2002年
[3]范立南.SQL Server2000实用教程.北京:清华大学出版社,2004年 [4]张登辉.高济.基于Web Service的可组合电子商务实验平台.高等教育出版社,2006年
[5]萨师烜.王珊编.数据库系统概论.北京:高等教育出版社,2003年 [6]杨志强. Visual Basic程序设计教程.北京:高等教育出版社,2003年
[7] 卢湘江,李向荣,晏子. MySQL高级配置和管理. 北京:清华大学出版社,2001.9
] 张海藩. 软件工程. 北京:人民邮电出版社,2006 [8