图书管理系统实验报告.docx
- 文档编号:25274208
- 上传时间:2023-06-06
- 格式:DOCX
- 页数:27
- 大小:2.15MB
图书管理系统实验报告.docx
《图书管理系统实验报告.docx》由会员分享,可在线阅读,更多相关《图书管理系统实验报告.docx(27页珍藏版)》请在冰豆网上搜索。
图书管理系统实验报告
学生实验报告
学期:
2016-2017学年第一学期
班级:
2015级计算机科学与技术(专升本)
学号:
150907190109
姓名:
胡立婷
课程编号:
07072
课程名称:
Web应用技术
填写说明
1、填写实验报告须字迹工整,使用黑色钢笔或签字笔填写。
2、课程编号和课程名称必须和教务系统中保持一致,实验项目名称填写须完整规范,不能省略或使用简称。
3、每个实验项目应填写一份实验报告。
如同一个实验项目分多次进行,可在实验报告中写明。
4、如果实验报告页面不够,可分成两个实验报告填写。
实验目录及成绩登记
序号
实验日期
实验项目名称
实验成绩
备注
1
2016年11月2
图书管理系统
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
实验报告最终成绩:
指导教师签名:
说明:
实验项目顺序和名称由学生填写,必须前后保持一致;实验成绩以百分制计,由实验指导教师填写并签名,一般不能涂改,确有涂改的,应在备注栏说明原因;实验报告部分最终成绩为所有实验项目成绩的平均值。
实验报告
实验日期:
2016年11月2日星期二
实验项目名称
设计一个图书管理系统,实现增删改查,借书还书等操作
实验项目类型
□演示型□验证型□基本训练型综合型□设计型□提高型
实验指导教师
刘凤华
实验地点
实验楼硬件机房422
是否分组
否
小组其他成员
一、实验目的及要求
1.需要完成的任务:
开发“图书管理系统”:
技术实现:
基于(JSP+Servlet+JavaBean+DAO+JDBC)的Web架构设计该系统。
2.技能训练
(1)掌握web架构设计模式
(2)掌握MVC开发模式;
(3)掌握如何编写JavaBean;
(4)掌握如何在JSP中访问JavaBean;
(5)理解JSP中对象的4个作用范围;
(6)使用JavaBean完成业务逻辑;
(7)学会用Dao封装数据库操作;
(8)掌握数据库的连接技术
二、实验使用的主要设备(含软件系统)
软件:
MyEclipse10.0、DreamweaverCS6、Tomcat、SQLServer2008R
硬件:
带有win7的PC电脑
三、实验操作过程及内容
1.数据库数据库设计
2.代码设计及主要页面:
Javabean:
Book.Java
packagevo;
publicclassBook{
privateintid;
privateStringISBN;
privateStringTitle;
privateStringAuthor;
privatefloatBookPrice;
privateStringRemarks;
privateintnumber;
privateintstate;
privateStringname;
publicStringgetName(){
returnname;
}
publicvoidsetName(Stringname){
this.name=name;
}
publicintgetState(){
returnstate;
}
publicvoidsetState(intstate){
this.state=state;
}
publicintgetNumber(){
returnnumber;
}
publicvoidsetNumber(intnumber){
this.number=number;
}
publicintgetId(){
returnid;
}
publicvoidsetId(intid){
this.id=id;
}
publicStringgetISBN(){
returnISBN;
}
publicvoidsetISBN(StringiSBN){
ISBN=iSBN;
}
publicStringgetTitle(){
returnTitle;
}
publicvoidsetTitle(Stringtitle){
Title=title;
}
publicStringgetAuthor(){
returnAuthor;
}
publicvoidsetAuthor(Stringauthor){
Author=author;
}
publicfloatgetBookPrice(){
returnBookPrice;
}
publicvoidsetBookPrice(floatbookPrice){
BookPrice=bookPrice;
}
publicStringgetRemarks(){
returnRemarks;
}
publicvoidsetRemarks(Stringremarks){
Remarks=remarks;
}
@Override
publicStringtoString(){
return"Book[ISBN="+ISBN+",Title="+Title+",Author="+Author
+",BookPrice="+BookPrice+",Remarks="+Remarks+"]";
}
}
Borrow.Java
packagevo;
publicclassBorrow{
privateStringusername;
privateStringtime;
privateintid;
publicvoidsetUsername(Stringue){
username=ue;
}
publicStringgetUsername(){
returnusername;
}
publicvoidsetId(inti){
id=i;
}
publicintgetId(){
returnid;
}
publicvoidsetTime(Stringti){
time=ti;
}
publicStringgetTime(){
returntime;
}
}
Login.java
packagevo;
publicclassLogin{
StringbackNews="";
booleansuccess=false;
privateStringusername;
privateStringpassword;
privateStringname;
privateStringtel;
privateintlevel;
publicvoidsetUsername(Stringue){
username=ue;
}
publicStringgetUsername(){
returnusername;
}
publicvoidsetPassword(Stringpa){
password=pa;
}
publicStringgetPassword(){
returnpassword;
}
publicvoidsetName(Stringna){
name=na;
}
publicStringgetName(){
returnname;
}
publicvoidsetTel(Stringte){
tel=te;
}
publicStringgetTel(){
returntel;
}
publicvoidsetBackNews(Strings){
backNews=s;
}
publicStringgetBackNews(){
returnbackNews;
}
publicvoidsetSuccess(booleanb){
success=b;
}
publicbooleangetSuccess(){
returnsuccess;
}
publicvoidsetLevel(intt){
level=t;
}
publicintgetLevel(){
returnlevel;}
}
User.java
packagevo;
publicclassUser{
privateStringuserid;
privateStringusername;
privateStringpassword;
privateStringsex;
privateStringbirthday;
privateStringemail;
privateStringaddress;
privateStringname;
privateStringtel;
privateintlevel;
publicintgetLevel(){
returnlevel;
}
publicvoidsetLevel(intlevel){
this.level=level;
}
publicStringgetTel(){
returntel;
}
publicvoidsetTel(Stringtel){
this.tel=tel;
}
publicStringgetName(){
returnname;
}
publicvoidsetName(Stringname){
this.name=name;
}
publicUser(Stringusername,Stringpassword,Stringsex,Stringbirthday,Stringemail,Stringaddress){
this.username=username;
this.password=password;
this.sex=sex;
this.birthday=birthday;
this.email=email;
this.address=address;
}
publicStringgetUserid(){
returnuserid;
}
publicvoidsetUserid(Stringuserid){
this.userid=userid;
}
publicStringgetUsername(){
returnusername;
}
publicvoidsetUsername(Stringusername){
this.username=username;
}
publicStringgetPassword(){
returnpassword;
}
publicvoidsetPassword(Stringpassword){
this.password=password;
}
publicStringgetSex(){
returnsex;
}
publicvoidsetSex(Stringsex){
this.sex=sex;
}
publicStringgetBirthday(){
returnbirthday;
}
publicvoidsetBirthday(Stringbirthday){
this.birthday=birthday;
}
publicStringgetEmail(){
returnemail;
}
publicvoidsetEmail(Stringemail){
this.email=email;
}
publicStringgetAddress(){
returnaddress;
}
publicvoidsetAddress(Stringaddress){
this.address=address;
}
}
DbConn.java数据库连接
packagedbc;
importjava.sql.Connection;
importjava.sql.DriverManager;
importjava.sql.ResultSet;
importjava.sql.SQLException;
importjava.sql.Statement;
importjava.util.Properties;
publicclassDbConn{
/*privatestaticStringdriver;
privatestaticStringurl;
privatestaticStringuser;
privatestaticStringpassword;
privatestaticPropertiespr=newProperties();*/
/**
*@paramargs
*/
publicstaticConnectiongetConnection(){
//TODOAuto-generatedmethodstub
try{
StringdbName="BMS";
Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
Stringurl="jdbc:
sqlserver:
//localhost:
1433;DatabaseName="+dbName;
Stringuser="sa";
Stringpassword="sa";
returnDriverManager.getConnection(url,user,password);
}catch(Exceptionex){
ex.getMessage();
returnnull;
}}
/*privateDbConn(){
}
static{
try{
pr.load(DbConn.class.getClassLoader().getResourceAsStream(
"db.properties"));
driver=pr.getProperty("driver");
url=pr.getProperty("url");
user=pr.getProperty("user");
password=pr.getProperty("password");
Class.forName(driver);
}catch(Exceptione){
thrownewExceptionInInitializerError(e);
}
}
//设计获得连接对象的方法getConnection()
publicstaticConnectiongetConnection()throwsSQLException{
returnDriverManager.getConnection(url,user,password);
}
*/
//设计释放结果集、语句和连接的方法free()
publicstaticvoidfree(ResultSetrs,Statementst,Connectionconn){
try{
if(rs!
=null)
rs.close();
}catch(SQLExceptione){
e.printStackTrace();
}finally{
try{
if(st!
=null)
st.close();
}catch(SQLExceptione){
e.printStackTrace();
}finally{
if(conn!
=null)
try{
conn.close();
}catch(SQLExceptione){
e.printStackTrace();
}
}
}
}
publicstaticintexecuteUpdate(Stringsql){
intresult=0;
try{
Connectionconn;
Statementstmt;
conn=getConnection();//调用getConnection()方法构造Connection对象的一个实例conn
stmt=conn.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,
ResultSet.CONCUR_READ_ONLY);
result=stmt.executeUpdate(sql);//执行更新操作
}catch(SQLExceptionex){
result=0;
}
returnresult;
}
publicResultSetexecuteQuery(Stringsql){
ResultSetrs=null;
Connectionconn=DbConn.getConnection();
try{
Statementstmt=conn.createStatement();
rs=stmt.executeQuery(sql);
}catch(SQLExceptione){
//TODOAuto-generatedcatchblock
e.printStackTrace();
}
if(rs==null){
System.out.println("执行查询操作失败!
");
}
returnrs;
}
}
3.界面实现:
”
用户信息注册()界面:
用户注册页面
管理员登录页面以及登录成功后的主页面:
页面的增删改查操作的效果图:
图书的借阅和归还页面上示意图
四、实验结论、问题与建议(含取得的成果)
指导教师评阅意见:
签名:
年月日
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 图书 管理 系统 实验 报告