图书馆管理系统j2ee.docx

上传人:b****5 文档编号:7549298 上传时间:2023-01-24 格式:DOCX 页数:24 大小:647.24KB
下载 相关 举报
图书馆管理系统j2ee.docx_第1页
第1页 / 共24页
图书馆管理系统j2ee.docx_第2页
第2页 / 共24页
图书馆管理系统j2ee.docx_第3页
第3页 / 共24页
图书馆管理系统j2ee.docx_第4页
第4页 / 共24页
图书馆管理系统j2ee.docx_第5页
第5页 / 共24页
点击查看更多>>
下载资源
资源描述

图书馆管理系统j2ee.docx

《图书馆管理系统j2ee.docx》由会员分享,可在线阅读,更多相关《图书馆管理系统j2ee.docx(24页珍藏版)》请在冰豆网上搜索。

图书馆管理系统j2ee.docx

图书馆管理系统j2ee

 

图书馆管理系统

 

:

 

一、安装JDK

  首先下载JDK(JDK的下载页面为:

);然后运行JDK安装程序,安装过程中所有选项保持默认;最后配置JDK的环境变量:

在“我的电脑”上点右键—>“属性”—>“高级”—>“环境变量(N)”。

  新建系统变量JAVA_HOME:

C:

\ProgramFiles\Java\;

  新建系统变量CLASSPATH:

.;%JAVA_HOME%\lib;(注意:

点号表示当前目录,不能省略)

  在系统变量Path的值的前面加入以下内容:

%JAVA_HOME%\bin;(注意:

这里的分号不能省略)

  到这里,JDK安装完毕。

  

  如果出现上图红框中所标注的内容,则说明JDK安装成功!

  注意:

如果以后要安装诸如Eclipse、BorlandJBuilder、JCreator、IntelliJIDEA等集成开发环境(IDE,IntegratedDevelopmentEnvironment),应该在IDE中编译运行一个简单的HelloWorld程序,以保证IDE可以识别出JDK的位置。

运行MyEcilpse

打开菜单Windows->Preferences,然后一次点击Myeclipse->ApplicationServers->,得到如下的界面:

设置完后点击Ok,进入下面的界面

单击运行后JBoss便启动了

二、系统概述

1.1设计目标

1.实现图书馆对在馆图书的按类别,书名,作者,是否已被借出等多方面的查询。

2.实现图书馆对新书入库,旧书注销的简单处理,并且建立书籍档案,方便图书管理。

3.对在馆图书进行编辑,包括添加图书信息、删除图书信息、修改图书信息。

4.建立图书馆外借读者数据库,包括添加读者信息、删除读者信息、修改读者信息。

5.可以按读者编号查询读者信息,包括该读者所借图书名称,归还日期等信息。

6.设立讨论区,方便管理员与读者之间的交流。

7.电子资源下载:

实现读者对电子文档,随书光盘的下载的功能。

1.2背景

"

近年来,随着图书馆规模的不断扩大,图书数量也相应的增加,有关图书的各种信息量也成倍增加,面对着庞大的信息量,传统的人工方式管理会导致图书馆管理上的混乱,人力与物力过多浪费,图书馆管理费用的增加,从而使图书馆的负担过重,影响整个图书馆的运作和控制管理,因此,必须制定一套合理、有效,规范和实用的图书管理系统,对图书资料进行集中统一的管理。

另一方面,IT产业和Internet获得了飞速发展,计算机应用已渗透到了各个领域,引起信息管理的革命,实现了信息的自动化处理,提高了处理的及时性和正确性。

图书管理工作面对大量的可模块化处理的信息,是当今信息革命的一个重要阵地。

我们小组开发图书管理信息系统就是采用现代化的信息管理方式代替手工管理方式,提高图书管理工作效率,作到信息的规范管理,科学统计和快速查询,让图书馆更好的为学校,社会服务。

系统开发的重点

1、建立合理的表结构,避免数据冗余

各表通过特定字段实现不同表的数据连接,避免数据冗余,需要设计简洁高效的表结构。

2、建立相当的系统安全性

登录用户身份的验证机制的设计、操作页面的权限保护。

3、建立严密的数据表操作机制

同一表有可能在多个模块中被修改,所以严密的数据表操作机制的建立十分比较困难的,但也是必须的。

除了设计时必须有相当程度的考虑,在编制时更应加强程序逻辑的可靠性和程序调试的全面性。

2.步骤

设计数据库系统时,应该充分了解用户各方面需求,包括现有的以及将来可能增加的需求,数据库设计一般包括以下几个步骤:

(1)数据需求分析、

(2)数据库概念结构设计

(3)数据库逻辑结构设计

2.1数据库需求分析

*

用户的需求具体体现在各种信息的提供,保存,更新和查询。

这就要求数据库的结构能充分满足各种信息的输入和输出。

在仔细分析调查有关图书馆管理信息需求的基础上设计出如图(见附录——图书馆管理系统数据流程图)所示的数据流程

针对图书馆管理系统的需求,通过对图书馆管理工作过程的内容和数据流程分析,设计出如下的数据项

1书库图书信息,包括数据项有:

图书编号、书名、书号、类别、出版社、作者、ISBN、印张、字数、版次、印数、定价、开本、是否在库、是否损坏、是否遗失、入库时间、图书介绍

1学生信息,包括数据项有:

学生编号、学号、姓名、性别、系别、班级、级别、已借图书、照片

2借书信息,包括数据项有:

图书序号、学生序号、是否归还、书名、姓名、学号、书号、系别、班级、已借图书、出版社、作者、借阅日期、图书类别、是否续借

3供货商信息,包括数据项有:

供货商序号、供货商、城市、地址、电话、传真、邮政编码、EMAIL、联系人、首次合作时间

4定单信息,包括数据项有:

定单序号、书名、书号、类别、出版社、作者、ISBN、印张、字数、版次、印数、定价、开本、详细信息、供货商序号、供货商、联系人、城市、订购数量、订购价格、交付方式、交货日期、定单日期、是否验收、验收日期

5过期图书信息,包括数据项有:

图书序号、书名、书号、学生序号、学生姓名、系别、班级、过期时间

6<

7员工信息,包括数据项有:

员工序号、姓名、密码、类别、性别、家庭住址、联系电话、职务、出生日期、照片

8罚款信息,包括数据项有:

流水号、罚款原因、罚款金额、日期

数据库概念结构设计

得到上面的数据项就能够设计出以下各种实体以及它们的关系,为后面的逻辑结构设计打下基础

根据上面的实力设计规划出的实体有:

图书信息实体、学生信息实体、借阅信息实体、供货商信息实体、定单信息实体、过期图书实体、员工信息实体、罚款信息实体。

 

图2-1图书信息实体E-R图

 

'

 

图2-2学生信息实体E-R图

 

图2-3借阅信息实体E-R图

 

`

 

~

图2-4供货商信息实体E-R图

 

 

 

图2-6过期图书信息实体E-R图

 

'

图2-7员工信息实体E-R图

 

图2-8罚款信息实体E-R图

 

 

|

数据库逻辑结构设计

图书馆管理系统中数据库的各个表格设计结果如下:

表2-1:

shukubiao书库图书信息表

列名

数据类型

说明

图书序号

Text

图书的编号,唯一

书号

Text

图书书号

书名

~

Text

书名

类别

Text

图书类别

出版社

Text

出版社

!

作者

Text

作者

ISBN

Text

图书ISBN号

印张

Text

|

图书印张

字数

Text

字数

版次

Text

图书版次

印数

^

Text

印数

定价

Currency

图书定价

开本

Text

开本

列名

数据类型

说明

是否在库

Boolean

是否在书库中的标志

是否损坏

Boolean

-

是否损坏的标志

是否遗失

Boolean

是否遗失的标志

入库时间

Date/Time

图书入库的日期

图书介绍

;

Text

图书的简单介绍

表2-2:

xueshengbiao书库图书信息表

列名

数据类型

说明

学生序号

Text

^

学生的编号,唯一

学号

Text

学号,不唯一

姓名

Text

学生姓名

性别

*

Boolean

性别

系别

Text

学生系别

班级

Text

学生所在班级

级别

Integer

学生的级别,表示借书的能力

已借图书

Integer

已经借过图书多少本

照片

Text

$

存放学生照片的路径

表2-3:

jh借阅信息表

列名

数据类型

说明

图书序号

Text

图书序号

学生序号

Text

学生序号

书名

Text

书名

姓名

Text

学生姓名

学号

Text

学号

书号

Text

书号

系别

>

Text

学生系别

班级

Text

学生班级

已借图书

Integer

学生已经借阅的图书数量

出版社

Text

出版社

作者

Text

图书作者

借阅日期

Date/Time

借阅日期

图书类别

Text

图书类别

是否归还

Boolean

该书是否归还

续借

Boolean

该书是否续借过

 

表2-4ghs供货商信息表

列名

数据类型

说明

供货商序号

Text

供货商序号

供货商

Text

供货商

/

城市

Text

城市

地址

Text

地址

电话

Text

#

电话

传真

Text

传真

邮政编码

Text

邮政编码

EMAIL

~

Text

EMAIL

联系人

Text

联系人

首次合作时间

Date/Time

首次合作时间

"

表2-5orders定单信息表

列名

数据类型

说明

定单序号

Text

定单序号

书名

Text

书名

类别

Text

类别

出版社

Text

出版社

作者

Text

作者

ISBN

Text

ISBN

印张

Text

印张

字数

Text

字数

版次

Text

版次

开本

Text

开本

印数

Text

印数

定价

Currency

定价

详细信息

Text

详细信息

供货商序号

Text

供货商序号

列名

数据类型

}

说明

联系人

Text

联系人

城市

Text

供货商城市

订购数量

{

Integer

订购数量

订购价格

Currency

订购价格

交付方式

Text

交付方式

`

交货日期

Date/Time

定单验收的日期

书号

Text

书号

定单日期

Date/Time

定单填写的日期

是否验收

Boolean

定单验收的标志

验收日期

Date/Time

定单验收日期

 

表2-6gqs过期书信息表

列名

数据类型

说明

图书序号

Text

图书序号

书名

·

Text

书名

书号

Text

书号

学生序号

Text

学生序号

学生姓名

Text

学生姓名

系别

Text

系别

班级

Text

班级

过期时间

Date/Time

过期的天数

表2-7password1员工信息表

列名

数据类型

说明

姓名

Text

员工姓名

员工序号

Text

员工序号

密码

Text

密码

类别

Boolean

员工权限级别

性别

Text

性别

@

列名

数据类型

说明

家庭住址

Text

家庭住址

联系电话

Text

<

联系电话

职务

Text

职务

出生日期

Date/Time

出生日期

照片

Text

存放员工照片的路径

表2-8jhfk罚款信息表

列名

数据类型

说明

流水号

Long

流水号

罚款原因

Text

罚款原因

罚款金额

Currency

罚款金额

日期

Date/Time

日期

2.4设计方案构思

图书馆管理信息系统的功能分析

图书馆管理具有自身鲜明的特点:

(1)根据操作人员的级别不同设置权限,对系统的操作有权限的设置

(2)能够实现图书的借、还、续借功能

(3)(

(4)具有对图书库的一般性维护的功能,包括过期书统计、损坏书统计

(5)能够实现图书的采购、下定单及定单验收、图书出库的功能

(6)能够实现学生及供货商的注册、浏览、删除、查询功能

(7)能够实现员工的录入、修改等功能

(8)能够实现书库借还图书情况、供货商、学生、员工信息的打印报表功能

(9)能够实现数据备份功能

图书馆管理信息系统的功能需求分析

功能模块

$

1分级权限

2借还图书

3书库维护

4图书采购

5学生及供货商管理

系统总体功能模块框图如下图

图书馆管理系统数据流程图

$

图书馆管理系统数据流程图

图书馆管理系统数据流程图说明

本系统需要数据输入的地方有:

学生的录入和供货商的注册以及图书采购定单的填写即图书的入库

在学生信息录入之前应先设置好学生的种类以及一些相关信息然后进行学生信息的录入,学生信息保存在“xueshengbiao”表中,进行学生信息的管理;另外一个需要数据输入的地方为供货商的录入,供货商信息保存在“ghs”表中,根据供货商的信息进行供货商的管理

最后一个需要数据输入的地方为图书采购定单的填写。

在整个图书采购到图书入库的过程中需要所有的数据做为支持。

首先学生信息和图书信息二者相互作用,形成图书的借阅信息;

然后根据图书的借阅信息进行图书借阅信息的统计,统计出每一类图书的借阅数量等统计信息;

&

这些统计信息的数据支持成为图书采购计划的重要依据,拟订图书的采购任务计划;

然后根据供货商信息选择图书采购计划的供货商;

根据以上这些信息进行图书采购的定单的填写,图书采购定单保存在“orders”表中,形成图书采购定单信息的管理;

根据定单信息验收图书,同时图书入库。

最后根据入库图书的类别设置进行图书信息管理,书库信息保存在“shukubiao”中。

三、设计

MYSQL代码

#

publicStringMysqlConnect(StringSearchStr)throwsSQLException

{

Stringmysql_search_result="";

Stringquery_str="select*fromlibrarywherebooknameREGEXP"+"'"+SearchStr+"'";

//注册驱动

{

("");

}

"

catch(ClassNotFoundExceptione)

{

mysql_search_result="beginerror";

();

}

state=null;//数据库表达式

mysql_connect=null;//数据库连接

search_result=null;//查询结果集

//下面连接数据库并进行查询

try

{

mysql_connect="jdbc:

","root","123456");

state=();

search_result=(query_str);

while())

{

//每条记录的各列项之间用"#"隔开

mysql_search_result+=("bookname")+"#"+("author")+"#"+("publicaddr")+"#"+("publictime")+"#"+("abstract")+"#"+("catalog")+"#";

}

}

catch(SQLExceptione)

{

mysql_search_result="error";

>

();

}

finally

{

try

{

();

}

catch(SQLExceptione)

{

}

try

{

();

}

catch(SQLExceptione)

{

}

try

{

();

}

catch(SQLExceptione)

{

{

}

}

returnmysql_search_result;

}

(2)Xml代码

xsi=""

xsi:

schemaLocation=""version="">

//localhost:

3306/itcastuseUnicode=true&characterEncoding=UTF-8"/>

<

(2)实体Bean类

package"serial")

@Entity

@Table(name="Student")

publicclassStudentimplementsSerializable{

privateIntegerstudentid;//学号

privateStringname;//姓名

privatebooleansex;//性别

privateShortage;//年龄

privateDatebirthday;//出生日期

privateStringaddress;//地址

privateStringtelephone//电话

@Id

@GeneratedValue

publicIntegergetStudentid(){

returnstudentid;

}

publicvoidsetStudentid(Integerstudentid){

=studentid;

}

@Column(name="name",length=50)

publicStringgetName(){

returnname;

}

publicvoidsetName(Stringname){

=name;

}

@Column(nullable=false)

publicbooleangetSex(){

returnsex;

}

publicvoidsetSex(booleansex){

=sex;

}

@Column(nullable=false)

publicShortgetAge(){

returnage;

}

publicvoidsetAge(Shortage){

=age;

}

publicDategetBirthday(){

returnbirthday;

}

publicvoidsetBirthday(Datebirthday){

=birthday;

}

@Column(name="address",length=100)

publicStringgetAddress(){

returnaddress;

}

publicvoidsetAddress(Stringaddress){

=address;

}

@Column(name="telephone",length=20)

publicStringgetTelephone(){

returntelephone;

}

publicvoidsetTelephone(Stringtelephone){

=telephone;

}

}

四、结果

五、分析总结

J2EE是一个规范,而不是一个产品。

J2EE定义了当人们写企业级软件时必须遵守的准则。

J2EE是3个不同版本的JAVA平台中的一个,每一个平台都是更小的一个平台的要领上的超集。

1、EJB

EJB容器最重要的职责是提供一个EnterpriseBeans可以运行的环境。

EJB容器装载EnterpriseBeans,并且使得客户端程序能进行远程调用。

从本质上讲,EJB容器是客户端程序和Beans之间看不见的中间人。

它们负责将客户端程序连接到Beans。

执行事务协调,提供数据存储,管理Bean的生命周期等。

EJB容器就好比剧院里的幕后舞台总监,为在舞台上表演的演员能成功地演出而提供所需灯光和背景。

不论是演员还是观众都不直接与舞台总监进行直接交互,这对于EJB容器来说也是同样适用的。

调用Bean的客户端程序从不直接对EJB容器API进行编码。

2、SessionBean

会话Bean代表的是调用它的客户程序所完成的工作,会话Bean是商务过程对象。

它们执行商务逻辑、商务规则、算法和工作流程。

无状态会话Bean:

只能保留单一对话内容,它们没有状态是因为它们不与客户端程序进行多方对话。

状态会话Bean:

当有多个客户端调用时,通过调度池调度实现Bean的钝化与激活。

3、EntityBean

实体Bean实例是一个对应到数据库中的视图。

在我们的编程中,我认为SessionBean主要的工作是完成业务逻辑方面的工作。

具体的讲如:

在它里面你可以通过它调用实体Bean与数据库之间建立映射,并完成SQL语句的编写,并与客户端进行交互。

EntityBean主要通过与数据库之间的映射,完成与数据库的交互,它自动生成一个主键查询,通过一个主键的唯一标识来唯一的定位一条数据,并把数据存储在一个存储空间中。

EntityBean里还有一个定位器方法,它通常用来在存储空间中查询一个已存在的实体Bean。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 成人教育 > 成考

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1