ImageVerifierCode 换一换
格式:DOCX , 页数:45 ,大小:262KB ,
资源ID:7035772      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/7035772.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(JAVA图书管理系统开发实训报告.docx)为本站会员(b****6)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

JAVA图书管理系统开发实训报告.docx

1、JAVA图书管理系统开发实训报告 ?JAVA图书管理系统开发?实训报告课程名称:JAVA 图书管理系统开发专 业:计算机应用技术 班 级:ZB10001 学 号: 2010720929姓 名:成 绩:计算机学院 二一二年三月五日一、程序设计目的通过工程驱动的学习和综合实训,熟练掌握运用Java语言进展桌面应用程序开发的根本知识和技能;熟练掌握JAVA的根本语法与JDBC数据库技术的应用;进一步熟悉SQL Server数据库的数据库管理数据库的创立、备份与恢复、函数与存储过程的应用、数据导入导出、作业的调度等、表的设计表的创立、修改、删除,字段的默认值、约束及关系等、数据的查询处理insert、

2、update、delete、select语句的应用等技术;并能结合数据库应用技术和软件工程技术进展桌面应用程序的开发,能根本胜任Java桌面开发程序员的岗位。二、程序设计题目描述和要求图书管理系统,是一个由人、计算机等组成的能进展管理信息的收集、传递、加工、保存、维护和使用的系统。其功能一般包括:图书信息管理、用户信息管理、图书借阅、图书归还、违约与毁坏赔偿、图书借还查询等等。三、程序设计报告内容3.1 系统需求分析以我校实际情况为根底,对于图书馆图书管理设计一个适合于学校图书馆使用的图书管理系统。还可以为学校领导提供图书的库存和图书流通量的查询。该系统需要完成对图书类别管理、统计管理、库存管

3、理、用户信息管理、图书借阅管理、图书归还管理、超期与损毁赔偿管理、图书借还查询管理、图书出入库和统计查询等。3.1.1 功能需求描述1、图书管理:对图书进展分类存储计算机、机械、建筑、文学、心理、艺术、经济、历史、地理、其它。在入库和出库的时候按图书类别进展管理。可对现有图书信息信息进展管理查询、修改。2、库存信息管理:对于图书出库图书登记和入库图书登记。3、用户信息管理:可以实现对不同用户进展添加、查询、删除和修改,并给与不同用户不同权限。4、图书借阅管理:对于图书借阅信息的登记书名、图书编号、馆藏、借书日期、借期、应还日期、对现有图书库存减少、对图书借阅人信息进展登记XX/学号、本次借阅册

4、数、图书编号。5、图书归还管理:对图书信息进展登记图书编号、借书日期、借期、应还日期、超期、续期对图书借阅人信息进展登记XX/学号、现借册数、现借藏书信息。6、图书超期与损毁赔偿管理:对于超期、损毁图书进展赔偿收费并登记赔偿人和管理员信息以及费用金额。系统设计图1、图书类别管理:对图书进展分类存储。在入库和出库的时候按图书类别进展管理。1分类:按图书的性质进展分类,并在图书编号中对不同类别的书籍使用不同的类别标示符计算机JS、机械JQ、建筑JZ、文学WX、心理XL、艺术YS、经济JJ、历史LS、地理DL。2图书信息管理:对现有图书信息进展查看并可以修改。2、库存信息管理:对于图书出库图书登记和

5、入库图书登记及现有库存图书进展管理。(1)入库管理:记录入库图书总量,分类别进展统计并记录。记录登记人员XX。将这些信息记录进数据库中,在相应查询权限下可以查询。但是记录后不可修改。(2)出库管理:记录出库图书总量,分类别进展统计记录,记录登记人员XX。将这些信息记录进数据库中,在相应查询权限下可以查询。但是记录后不可修改。(3)现有库存管理:对现有库存进展管理,在入库时对库存进展增加并对每一本图书进展分类编号登记,在出库时对库存减少并删除相应的图书信息。3、用户信息管理:可以实现对不同用户进展添加、查询、删除和修改,并给与不同用户不同权限。(1)用户信息添加:对用户的相应信息进展添加用户名,

6、密码,出生日期,性别,管理操作权限,借阅权限。(2)用户信息查询:对用户的信息进展查询。(3)用户信息删除:对用户信息进展删除。(4)用户信息修改:用户可以对自己的用户密码和出生日期进展修改,管理员只可以修改用户的权限4、图书借阅管理:对于图书借阅信息的登记书名、图书编号、馆藏、借书日期、借期、应还日期同时系统自动对借阅图书量增加、对现有图书库存减少、对图书借阅人信息进展登记XX/学号、本次借阅册数、现借册数、可借册数、现借藏书信息。(1)借阅信息登记:对用户的信息进展登记XX、本次借阅册数、现借册数、可借册数、现借藏书信息,并根据借书权限借阅相应的书籍数量。将信息记录入数据库中相应权限可以进

7、展查询。(2)对借阅图书进展登记:对借出图书的书名、图书编号、馆藏、借书日期、借期、应还日期进展登记并关联相应的借书用户系统自动的在书籍借阅标示栏加一表示借出。图书在图书馆内借阅栏标示0,借出后自动加1,归还自动减1,损毁在借阅的根底上加1。将信息记录入数据库中相应权限可以进展查询。0表示在书库中,1表示借出,2表示损毁。5、图书归还管理:对图书信息进展登记书名、图书编号、馆藏、借书日期、借期、应还日期、超期、续期对图书借阅人信息进展登记XX/学号、现借册数、可借册数、现借藏书信息。(1)用户信息显示:显示用户信息XX/学号、现借册数、可借册数、现借藏书信息,对图书信息管登记书名、图书编号、馆

8、藏、借书日期、借期、应还日期、超期、续期并根据是否超期损毁进展相应操作。(2)用户信息删除:对相应的借书用户关联图书信息删除。系统自动在图书标示栏内减1。系统自动将用户现借数量减1,可借数量加1。6、图书超期和损毁赔偿管理:对于超期、损毁图书进展赔偿收费并登记赔偿人和管理员信息以及费用金额。(1)超期赔偿管理:登记用户信息XX/学号查看超期时间并对其进展赔偿收费记录收费人信息,赔偿人信息,收费金额,收费日期并存入数据库中。(2)损毁赔偿管理:登记用户信息XX/学号并对其进展赔偿收费记录收费人信息,赔偿人信息,收费金额,收费日期并存入数据库中。在图书信息中的借阅标示栏内系统自动在借阅的根底上加1

9、表示损毁。3.1.2 对应数据需求描述1 、 图书类别管理数据需求:图书分类管理数据需求:按:计算机、机械、建筑、文学、心理、艺术、经济、历史、地理九类进展分类。并对分类图书进展标识计算机JS、机械JQ、建筑JZ、文学WX、心理XL、艺术YS、经济JJ、历史LS、地理DL。并在标识符后面加四位编号例子:JS0001。数据项数据需求图书类别名称按图书类别进展分类初始分为九种,计算机、机械、建筑、文学、心理、艺术、经济、历史、地理。在系统完成后可进展类别的添加和删除修改。10汉字内类别说明对相应类别进展详细描述。2 、库存信息管理数据需求:(1)入库管理数据需求:数据项数据需求入库编号用于在数据库

10、中唯一标识入库信息。自动增加入库ISBN编号用于唯一标识图书的图书ISBN编码 。入库图书数量图书的数量。入库时间记录图书入库时间。入库操作员编号记录登记图书入库操作员的编号。(2)出库管理数据需求:出库编号用于在数据库中唯一标识出库信息。自动增加出库ISBN编号用于唯一标识图书的图书ISBN编码 。出库图书数量图书数量出库时间记录图书出库时间。出库操作员编号登记图书出库操作员的编号。3、 用户信息管理数据需求:1用户信息添加数据需求:数据项数据需求用户编号用于唯一标识学生,要求:共8位,前2为年份,中间2位特殊类别标号默认00,后面4位为报名序号。XX15个汉字以内,可能带有特殊符号可修改。

11、性别只能是“男或“女。密码任意612位字符。十一为数字座机前面加区号。班级存储学院班级详细信息注册时间如:2012-12-10用户权限号只能有以下四种领导,管理员,教师,学生,状态包括:正常、暂停使用和已注销2用户权限管理:数据项数据需求权限编号编号用于标示权限类别的编号权限名称权限的名称。领导、教师、管理员、学生可借阅书籍根据权限借阅不同数量的书籍。3用户信息修改数据需求:修改用户的信息。数据项数据需求用户编号用于唯一标识学生,要求:共8位,前2为年份,中间2位特殊类别标号默认00,后面4位为报名序号。XX15个汉字以内,可能带有特殊符号可修改。性别只能是“男或“女。密码任意612位字符。十

12、一为数字座机前面加区号。班级存储学院班级详细信息注册时间如:2012-12-10用户权限号权限的标识。只能有以下四种领导,管理员,教师,学生,状态包括:正常、暂停使用和已注销5用户信息删除数据需求:删除用户的注册信息。4 、图书借阅,归还管理数据需求:在借阅图书时的数据需求。数据项数据需求借还编号唯一标识借阅信息的编号。在数据库中区别信息。用户编号管理员人工将用户编号输入登记框。ISBN管理员人工将图书编号输入登记框。借阅时间系统自动在电脑上获取时间。借阅数量登记借阅书籍的数量。归还时间在归还时自动获取时间。5、图书超期和损毁赔偿管理数据需求:数据项数据需求赔偿编号唯一标识借阅信息编号。自动增

13、加。用户编号管理员人工将用户编号输入文本框。ISBN编号管理员人工将图书编号输入文本框。情况描述对于赔偿情况的详细描述处理结果管理员登记赔偿金额收费时间系统自动获取系统时间。操作员编号输入操作员编号。3.1.3 数据库概念模型设计图1 用户实体图图2 权限实体图图3 图书实体图图4 类别实体图图5 借还实体图图6 赔偿实体图图7 入库实体图图8 出库实体图图9 功能实体图图10 模块实体图图11 各实体关系图3.1.4数据库逻辑模型设计模型设计根据E-R图,将其转换为关系模式可得到以下8个关系模式:用户用户编号、XX、性别、密码、班级、注册时间、权限编号、状态权限权限编号、权限名称、可借阅书籍

14、模块权限编号、功能名称图书ISBN编号、图书名、作者、出版时间、书价、图书书类别名、库存量、现存量类别图书类别名、说明借还借阅编号、用户编号、ISBN、借阅时间、借阅数量、归还时间赔偿赔偿编号、用户编号、ISBN编号、原因、处理结果、处理时间、操作员编号出库出库编号、ISBN编号、出库图书数量、出库时间、出库操作员编号入库入库编号、ISBN编号、入库图书数量、入库时间、入库操作员编号3.1.5表的设计与实现表一:用户信息表(users)=OK字段名称类型是否为空默认值是否主键用户编号(user_Id)intnot null自动增加主键用户名(user_Name)varchar(10)not n

15、ull性别(user_Sex)char(2)not null男密码(user_Pwd)char(12)not null123456(user_Tel)varchar (30)班级(user_Class)varchar (50)注册时间(user_Time)datetimenot null自动获取权限编号(limit_Id)varchar(10)not null学生外键状态(user_State)char(4)not null使用表二:用户权限表(limit)=OK字段名称类型是否为空默认值是否主键权限编号(limit_Id)varchar(10)not null自动增加主键S001权限类名(l

16、imit_Name)varchar(15)not null借阅书籍数量(limit_Qty)int not null3表三:图书信息表(books)字段名称类型是否为空默认值是否主键ISBN编号(book_Id)varchar(17)not null主键图书名(book_Name)varchar(30)not null作者(book_Author)varchar (10)not null(book_Society)varchar(50)not null出版时间(book_Time)datatimenot null书价(book_Price)intnot null图书类别名(book_Sort)

17、varchar(10)not null计算机外键库存量(book_Qty)int现存量(book_Qtyx)int表四:功能模块表(module)=OK字段名称类型是否为空默认值是否主键权限编号(lilmit_Id)varchar(10)not null外键模块名称(module_Name)varchar(30)not null表五:超期损毁表(pensate)字段名称类型是否为空默认值是否主键赔偿编号(cpt_Id)intnot null主键用户编号(user_Id)intnot null外键ISBN编号(book_Id)varchar(17)not null外键原因(cpt_Cause)v

18、archar (50)notnull收费(cpt_result)char(10)notnull收费时间(cpt_Time)datatimenot null自动获取操作员编号(user_Id)intnot null外键表七:图书类别表:sort=字段名称类型是否为空默认值是否主键图书类别名(book_Sort)varchar(10)not null计算机主键说明explaintext表六:借阅归还表borrow字段名称类型是否为空默认值是否主键借阅编号(borrow_Id)intnot null主键用户编号(user_Id)Intnot null外键ISBN编号(book_Id)varchar(

19、17)not null外键借阅时间(borrow_Time)datetimenot null自动获取借阅数量(borrow_Qty)int归还时间(return_Time)datatime自动获取表八:入库表:(enter)字段名称类型是否为空默认值是否主键入库编号(enter_Id)intnot null自动增加主键ISBN编号(book_Id)varchar(17)not null外键入库图书数量(enter_Qty)intnot null入库时间(enter_Time)datatimenot null自动获取入库操作员编号(user_Id)intnot null外键表九:出库表(out)

20、字段名称类型是否为空默认值是否主键出库编号(out_Id)varchar(10)not null自动增加主键ISBN编号(book_Id)varchar(12)not null外键出库图书数量(out_Qty)intnot null出库时间(out_Time)datatimenot null自动获取出库操作员编号(user_Id)varchar(10)not null外键管理系统窗口图3.2系统详细设计与实现3.2.1 登陆界面设计 public void actionPerformed(ActionEvent e) /监视器 if(e.getSource()=Ok)/点击确定时执行的语句 i

21、f(yh.getText().equals()/判断用户号是否输入 JOptionPane.showMessageDialog(Ok,请输入账号,提示,JOptionPane.INFORMATION_MESSAGE); else if(mm.getText().equals()/判断密码是否为空 JOptionPane.showMessageDialog(Ok,请输入密码!,提示,JOptionPane.INFORMATION_MESSAGE); try Class.forName(.microsoft.jdbc.sqlserver.SQLServerDriver); catch (Class

22、NotFoundException e1) JOptionPane.showMessageDialog(null,数据库驱动程序不存在,提示,JOptionPane.ERROR_MESSAGE); try Connection con=DriverManager.getConnection(jdbc:microsoft:sqlserver:/localhost:1433;DatabaseName=图书管理系统,sa,123); PreparedStatement pstmt=con.prepareStatement(select * from users where user_Id=? and

23、 user_Pwd=? and user_State=使用); pstmt.setInt(1,Integer.parseInt(yh.getText(); pstmt.setString(2,mm.getText(); ResultSet rst=pstmt.executeQuery(); if(rst.next() new MainFrame(图书管理系统,Integer.parseInt(yh.getText(); this.dispose(); else JOptionPane.showMessageDialog(null,用户名不存在或者密码不正确,请重新输入!,提示,JOptionP

24、ane.ERROR_MESSAGE); catch (SQLException e1) JOptionPane.showMessageDialog(null,SQL语句执行错误!,提示,JOptionPane.ERROR_MESSAGE); if(e.getSource()=Cancel)/点击取消实现的 this.dispose(); if(bc.isSelected()=true)/选择记住密码 savaFile(); if(bc.isSelected()=false)/未选择记住密码 savaFile1(); if(e.getSource()=login)/点击注册按钮 new Logi

25、nFrame(注册); public void savaFile()/实现对文本框文字的保存 File f=new File(.datadk.txt); try FileWriter txt=new FileWriter(f); txt.write(yh.getText()+-); txt.write(mm.getText()+); txt.close(); catch (IOException e) / TODO 自动生成 catch 块 e.printStackTrace(); public void savaFile1()/实现对空白文本的保存 File f=new File(.data

26、dk.txt); try FileWriter txt=new FileWriter(f); txt.write(yh.getText()+-); txt.write(+); txt.close(); catch (IOException e) / TODO 自动生成 catch 块 e.printStackTrace(); public void Duqu() /实现对文字的读取 FileReader fr; try fr = new FileReader(.datadk.txt); BufferedReader br = new BufferedReader(fr); try String line = br.readLine(); yh.setText(line.toString().substring(0,line.toString().indexOf(-); mm.setText(line.toString().substring(line.toString().indexOf(-)+1,line.toString().indexOf(+); catch (IOException e) e.printStackTrace(); catch (FileNotFoundException e1) e1.printStackTrace(); 3.2.2 主界面voi

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

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