java实习实训报告.docx
- 文档编号:8152585
- 上传时间:2023-01-29
- 格式:DOCX
- 页数:17
- 大小:274.30KB
java实习实训报告.docx
《java实习实训报告.docx》由会员分享,可在线阅读,更多相关《java实习实训报告.docx(17页珍藏版)》请在冰豆网上搜索。
java实习实训报告
湖南城建职业技术学院
实习(实训)报告
实习(实训)名称:
书籍借阅管理系统
系别:
信息工程系专业:
计算机网络
班级:
08计网班姓名:
实习(实训)指导老师:
老师
实习时间:
第21周实习地点:
学校机房
2010年1月16日
湖南城建职业技术学院
实习(实训)成绩评定表
系别:
信息工程系班级:
08网络班姓名:
成绩:
实习名称
书籍借阅管理系统
指导老师评语
指导老师签名:
年月日
平时成绩
实习实训报告成绩
一、实习(实训)目的
温故知新,培养我们学生的动手能力,锻炼我们的思维,巩固我们的专业技能,为我们的综合能力的发展打好基础,为我们今后能更好的学习做好铺垫。
二、实习(实训)器材或环境(注:
针对计算机等专业的硬件、软件环境要求)
1.硬件环境
★处理器:
InterCR300或更高。
★内存128MB(建议196MB)。
★硬盘空间:
20MB。
2.软件环境
★操作系统:
Windows98或Windows2000/WindowsNTServer4.0
★MicrosoftAccess2000或SQLSever
三、实习(实训)内容与过程
我们做的书籍借阅管理系统主要划分为以下七个模块:
1)操作员管理模块:
实现操作员的登录及操作用户的添加,更改密码和删除用户的管理。
2)书籍信息管理模块:
实现书籍信息的添加和更新。
3)书籍借出模块:
书籍借出管理。
4)书籍还入模块:
书籍还入管理。
5)信息一览模块:
对书籍,读者和书籍借阅情况列表显示。
6)数据操作模块:
封装对数据库的操作。
具体操作如下:
1)数据库结构设计
该系统包括书籍管理、借阅管理和用户管理,所以数据库应包括书籍信息表(图1-1所示)、书籍借阅表(图1-2所示)、用户表(图1-3所示)。
图1-1书籍信息表
图1-2书籍借阅表
图1-3用户信息表
2)主界面模块设计
根据功能需求和总体设计的结果,它应该由操作员登录、操作员管理、书籍借出管理、书籍还入管理和信息一览组成,如图2-1所示。
可通过点击菜单项进入相应的功能模块。
图2-1书籍管理系统主界面
建立一个新的应用程序,并将其主窗口命名为“BookManagerMain”。
修改窗体布局为“XYLayout或NULL”。
在此窗体上添加一菜单,名为“jMemuBar”。
代码如下:
//设置权限。
根据操作员的不同,设置相应的权限。
管理员可操作所有功能和添加用户;书籍操作员只能管理书籍;借阅操作员只能管理借阅情况。
由于这个过程要在用户登录中使用,因此其函数作用范围要设为public
publicvoidsetEnable(Stringpowertype){
if(powertype.equals("管理员")){
jMenuUserManager.setEnabled(true);
jMenuBookManager.setEnabled(true);
jMenuBorrowBook.setEnabled(true);
jMenuReturnBook.setEnabled(true);
jMenuAllInfo.setEnabled(true);
}
elseif(powertype.equals("书籍操作员")){
jMenuUserManager.setEnabled(false);
jMenuBookManager.setEnabled(true);
jMenuBorrowBook.setEnabled(false);
jMenuReturnBook.setEnabled(false);
jMenuAllInfo.setEnabled(true);
}
elseif(powertype.equals("借阅操作员")){
jMenuUserManager.setEnabled(false);
jMenuBookManager.setEnabled(false);
jMenuBorrowBook.setEnabled(true);
jMenuReturnBook.setEnabled(true);
jMenuAllInfo.setEnabled(true);
}
else{
jMenuUserManager.setEnabled(false);
jMenuBookManager.setEnabled(false);
jMenuBorrowBook.setEnabled(false);
jMenuReturnBook.setEnabled(false);
jMenuAllInfo.setEnabled(false);
}
}
//在主窗体被打开时打开登陆窗口
voidthis_windowOpened(WindowEvente){
setEnable("else");
//采用userLogin(this)的形式,将父窗体对象传入
userLogindlg=newuserLogin(this);
DimensiondlgSize=dlg.getPreferredSize();
DimensionfrmSize=getSize();
Pointloc=getLocation();
dlg.setLocation((frmSize.width-dlgSize.width)/2+loc.x,(frmSize.height-dlgSize.height)/2+loc.y);
dlg.setVisible(true);
}
//打开登陆窗口
voidjMenuItemLogin_actionPerformed(ActionEvente){
userLogindlg=newuserLogin(this);
DimensiondlgSize=dlg.getPreferredSize();
DimensionfrmSize=getSize();
Pointloc=getLocation();
dlg.setLocation((frmSize.width-dlgSize.width)/2+loc.x,(frmSize.height-dlgSize.height)/2+loc.y);
dlg.setVisible(true);
}
//打开添加用户窗口
voidjMenuItemUserAdd_actionPerformed(ActionEvente){
userAdddlg=newuserAdd();
DimensiondlgSize=dlg.getPreferredSize();
DimensionfrmSize=getSize();
Pointloc=getLocation();
dlg.setLocation((frmSize.width-dlgSize.width)/2+loc.x,(frmSize.height-dlgSize.height)/2+loc.y);
dlg.setVisible(true);
}
//打开用户密码修改窗口
voidjMenuItemUserUpdate_actionPerformed(ActionEvente){
userUpdatedlg=newuserUpdate();
DimensiondlgSize=dlg.getPreferredSize();
DimensionfrmSize=getSize();
Pointloc=getLocation();
dlg.setLocation((frmSize.width-dlgSize.width)/2+loc.x,(frmSize.height-dlgSize.height)/2+loc.y);
dlg.setVisible(true);
}
//打开用户删除窗口
voidjMenuItemUserDelete_actionPerformed(ActionEvente){
userDeletedlg=newuserDelete();
DimensiondlgSize=dlg.getPreferredSize();
DimensionfrmSize=getSize();
Pointloc=getLocation();
dlg.setLocation((frmSize.width-dlgSize.width)/2+loc.x,(frmSize.height-dlgSize.height)/2+loc.y);
dlg.setVisible(true);
}
//打开书籍信息添加窗口
voidjMenuItemBookAdd_actionPerformed(ActionEvente){
bookAdddlg=newbookAdd();
DimensiondlgSize=dlg.getPreferredSize();
DimensionfrmSize=getSize();
Pointloc=getLocation();
dlg.setLocation((frmSize.width-dlgSize.width)/2+loc.x,(frmSize.height-dlgSize.height)/2+loc.y);
dlg.setVisible(true);
}
//打开书籍信息更新窗口
voidjMenuItemBookUpdate_actionPerformed(ActionEvente){
bookUpdatedlg=newbookUpdate();
DimensiondlgSize=dlg.getPreferredSize();
DimensionfrmSize=getSize();
Pointloc=getLocation();
dlg.setLocation((frmSize.width-dlgSize.width)/2+loc.x,(frmSize.height-dlgSize.height)/2+loc.y);
dlg.setVisible(true);
}
//打开书籍删除窗口
voidjMenuItemBookDelete_actionPerformed(ActionEvente){
bookDeletedlg=newbookDelete();
DimensiondlgSize=dlg.getPreferredSize();
DimensionfrmSize=getSize();
Pointloc=getLocation();
dlg.setLocation((frmSize.width-dlgSize.width)/2+loc.x,(frmSize.height-dlgSize.height)/2+loc.y);
dlg.setVisible(true);
}
//打开书籍出借窗口
voidjMenuItemBookBorrow_actionPerformed(ActionEvente){
borrowBookdlg=newborrowBook();
DimensiondlgSize=dlg.getPreferredSize();
DimensionfrmSize=getSize();
Pointloc=getLocation();
dlg.setLocation((frmSize.width-dlgSize.width)/2+loc.x,(frmSize.height-dlgSize.height)/2+loc.y);
dlg.setVisible(true);
}
//打开书籍出借信息修改窗口
voidjMenuItemBookBorrowUpdate_actionPerformed(ActionEvente){
borrowInfoUpdatedlg=newborrowInfoUpdate();
DimensiondlgSize=dlg.getPreferredSize();
DimensionfrmSize=getSize();
Pointloc=getLocation();
dlg.setLocation((frmSize.width-dlgSize.width)/2+loc.x,(frmSize.height-dlgSize.height)/2+loc.y);
dlg.setVisible(true);
}
//打开书籍还入窗口
voidjMenuItemBookReturn_actionPerformed(ActionEvente){
returnBookdlg=newreturnBook();
DimensiondlgSize=dlg.getPreferredSize();
DimensionfrmSize=getSize();
Pointloc=getLocation();
dlg.setLocation((frmSize.width-dlgSize.width)/2+loc.x,(frmSize.height-dlgSize.height)/2+loc.y);
dlg.setVisible(true);
}
//打开书籍还入信息修改窗口
voidjMenuItemBookReturnUpdate_actionPerformed(ActionEvente){
returnInfoUpdatedlg=newreturnInfoUpdate();
DimensiondlgSize=dlg.getPreferredSize();
DimensionfrmSize=getSize();
Pointloc=getLocation();
dlg.setLocation((frmSize.width-dlgSize.width)/2+loc.x,(frmSize.height-dlgSize.height)/2+loc.y);
dlg.setVisible(true);
}
//打开所有书籍列表窗口
voidjMenuItemAllBook_actionPerformed(ActionEvente){
bookListdlg=newbookList();
DimensiondlgSize=dlg.getPreferredSize();
DimensionfrmSize=getSize();
Pointloc=getLocation();
dlg.setLocation((frmSize.width-dlgSize.width)/2+loc.x,(frmSize.height-dlgSize.height)/2+loc.y);
dlg.setVisible(true);
}
voidjMenuFileExit_actionPerformed(ActionEvente){
System.exit(0);
}
//打开所有书籍借阅查询窗口
voidjMenuItemAllInfo_actionPerformed(ActionEvente){
AllInfodlg=newAllInfo();
DimensiondlgSize=dlg.getPreferredSize();
DimensionfrmSize=getSize();
Pointloc=getLocation();
dlg.setLocation((frmSize.width-dlgSize.width)/2+loc.x,
(frmSize.height-dlgSize.height)/2+loc.y);
dlg.setVisible(true);
}
}
3)与数据库建立连接
packagedata;
importjava.sql.*;//引入sql包
//数据库操作类
publicclassDBManager{
privateStringdriver="sun.jdbc.odbc.JdbcOdbcDriver";
privateStringurl="jdbc:
odbc:
BookManagerDB";//创建指定数据库的URL
//查询方法,返回查询结果集
publicResultSetgetResult(Stringsql){
ResultSetrs=null;
try{
Class.forName(driver);//加载驱动程序
Connectionconn=DriverManager.getConnection(url);//创建连接
//创建statement对象
Statementstmt=conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE);
rs=stmt.executeQuery(sql);//执行SQL语句,返回结果集
}
//异常处理
catch(Exceptione){
e.printStackTrace();
}
returnrs;
}
//执行更新语句方法
publicintexecuteSql(Stringsql){
intcount=0;
try{
Class.forName("driver");//加载驱动程序
Connectionconn=DriverManager.getConnection(url);//创建连接
Statementstmt=conn.createStatement();//创建statement对象
count=stmt.executeUpdate(sql);//执行SQL语句,返回更新条数
}
catch(Exceptione){
e.printStackTrace();
}
returncount;//返回的count>0,表示操作成功
}
}
4)操作员管理设计
1.此模块要完成操作员或管理员的登录,因此界面设计得很乘法,只有【确定】和【取消】两个按钮,如图3-1-1所示。
图3-1-1管理员和操作员登录窗口
操作员登录系统由用户名和密码构成,输入用户名和密码后系统首先验证输入字符的有效性,然后调用数据库查看此用户名是否存在、密码是否正确,然后再判断用户权限,从而确定是操作员还是管理员,根据权限的不同在执行主窗体中的setEnable过程时赋与不同的参数值。
2.此部分要完成添加新的操作员或管理员账号的功能,用户需要提供用户名、密码并选择登录权限,界面设计如图3-2-1所示。
图3-2-1用户添加窗口
登录权限采用JcomboBox,密码和确认密码采用JpasswordField。
操作员的信息由用户名和密码构成,在操作员输入用户名和密码后,系统首先验证输入字符的有效性,再读取用户选择的登录权限,然后执行数据库的插入过程。
3.操作员密码或权限修改,这部分要实现友操作员或管理员账号的密码或权限修改的功能,用户需要提供用户名、原密码、亲密码和确认新密码或者要修改的权限,界面设计如图3-3-1所示。
图3-3-1用户密码或权限修改窗口
4.操作员删除模块,这部分要实现支操作员或管理员账事情进行删除的功能,用户需要提供用户名和密码,界面如图3-4-1所示。
图3-4-1用户删除窗口
在操作员输入用户名和密码后,系统首先验证输入字符的有效性,然后调用数据库查看此用户名是否存在或密码是否正确,然后再执行更新过程。
5)书籍管理模块设计
1.添加书籍信息模块,这部分要实现添加书籍信息的功能,用户需要提供书籍信息的相关资料,从功能上考虑,界面设计如图4-1-1所示。
图4-1-1书籍信息添加窗口
在操作员输入书籍信息的相关资料后,系统首先验证输入字符的有效性,然后再执行添加过程。
2.修改书籍信息模块,这部分要实现对书籍信息进行修改的功能,用户需要提供所要修改的书籍的名称,由功能考虑,界面设计如图4-2-1所示。
在操作员输入书籍名称后,系统首先验证输入字符的有效性,然后市政用数据库对象执行更新过程。
图4-2-1书籍信息更新窗口
3.删除书籍信息模块,这部分实现对书籍信息删除的功能,界面设计如图4-3-1所示。
图4-3-1书籍信息删除窗口
在操作员打开此窗口后,窗体给出一个文本框,用来输入书籍名称,单击【确定】按钮后,执行相应的操作。
6)书籍借出管理设计
1.书籍借出模块,这部分要实现支书籍借出的功能,用户需要提供借阅者姓名、书名和其他相关信息,系统首先验证输入的有效性,然后执行相关的数据库过程。
界面设计如图5-1-1所示。
点击【清空】按钮,会清空所有信息,输入借阅者姓名、借阅日期并选择要借书籍,点击【确定】按钮会保存此书借阅的相关信息到数据库。
图5-1-1书籍借出窗口
2.书籍借出信息修改模块,这部分要实现对书籍借出信息修改的功能。
窗体效果如图5-2-1所示。
点击【清空】按钮,会清空所有信息,输入借阅者姓名或书名点击【确定】按钮会调出此书相关信息,【更新】按钮将保存你对所借阅信息的修改。
图5-2-1书籍借出信息修改窗口
7)书籍还入管理设计同书籍借出管理设计,在此不做详细说明。
8)信息一览模块设计
1.书籍信息一览,这部分要实现对书籍信息查询。
界面设计如图7-1-1所示。
点击【查询】按钮,会调出所有书籍的信息,输入借阅者姓名、书名、出版社中的一项,点击【查询】按钮,会调出相关信息。
图7-1-1书籍信息一览窗口
2.借阅信息一览,界面设计如图7-2-1所示。
点击【查询】按钮,会调出所有被借书籍的信息,输入借阅者姓名或者书名,点击【查询】按钮,会调出相关信息。
图7-2-1借阅情况一览
四、实习(实训)总结与体会
通过一个专业周的学习,我学到了不少新的东西,同时也温习了以前所学
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- java 实习 报告