当前位置:文档之家› javaweb简单的图书管理系统

javaweb简单的图书管理系统

javaweb简单的图书管理系统
javaweb简单的图书管理系统

实验报告

实验课程:Web应用开发

学生姓名:

学号:

专业班级:

2018年6月18日

南昌大学实验报告

学生姓名:学号:专业班级:

实验类型:□验证■综合□设计□创新实验日期:实验成绩:

一、实验项目名称

《Web应用开发》综合训练

二、实验目的和要求

使用Java+JSP+Servlet技术,选用EL、JSTL、Struts、Hibernate、myBatis、jQuery 等技术,开发一个基本Web的应用程序,以达到掌握Web应用开发的基本原理、具备使用Java+JSP+Servlet技术结合流行框架技术开发Web应用程序的能力,从而提升学生的Web编程能力。

要求学生自选题目,开发一个模拟的Web应用程序。可以一人一题,也可以多人一题。但是每人必须单独完成动态Web页面10页以上。

要求学生根据需求描述独自完成需求分析,软件设计、程序模块设计以及程序的编写、调试和测试。

设计和程序完成后,要求根据指定的格式要求,独自完成设计报告的撰写。

三、实验基本情况

本实训要求根据下述需求陈述写出需求分析文本并进行软件开发,并列出源代码和运行结果。

四、需求分析

项目介绍

这是一个简单的图书管理系统,由一个管理员来实现对用户的删除,图书的增加,修改和图书的删除功能,用户注册登录后可以实现对图书的借阅和归还。由于时间关系在设计项目时有很多不好的地方,未来得及修改,在管理员登录界面采用了图形验证码,由于是同样的技术,在用户登录界面就没有采用图形验证技术。

功能需求

1.用户注册

2.图书添加

3.图书修改

4.用户管理

5.图书借阅

6.归还图书

五、软件设计ER图

程序流程

数据库设计

模块设计及运行结果

项目整体采用MVC 模式,整体上运用jsp+javabean+servlet+jdbc+dao,每个jsp页面采用jQuery技术作为背景,实现简单的动态背景,部分页面运用EL、JSTL、js中的点击事件、Bootsrap、图形验证码、分页技术以及邮箱页面。

六、源代码

1.用户类User.Java

package vo;

public class User {

private String name,pwd;

public String getName() {

return name;

}

public void setName(String name) {

https://www.doczj.com/doc/b018576250.html, = name;

}

public String getPwd() {

return pwd;

}

public void setPwd(String pwd) {

this.pwd = pwd;

}

}

2.图书类bookinfo.java

package vo;

public class bookinfo

{

private String bno,bname,author,price,other;

public String getBno() {

return bno;

}

public void setBno(String bno) {

this.bno = bno;

}

public String getBname() {

return bname;

}

public void setBname(String bname) {

this.bname = bname;

}

public String getAuthor() {

return author;

}

public void setAuthor(String author) {

this.author = author;

}

public String getPrice() {

return price;

}

public void setPrice(String price) {

this.price = price;

}

public String getOther() {

return other;

}

public void setOther(String other) {

this.other = other;

}

}

3.借书信息类https://www.doczj.com/doc/b018576250.html,

package vo;

public class lendbook

{

private String username, bno,bname,author,price,other;

public String getUsername() {

return username;

}

public void setUsername(String username) {

https://www.doczj.com/doc/b018576250.html,ername = username;

}

public String getBno() {

return bno;

}

public void setBno(String bno) {

this.bno = bno;

}

public String getBname() {

return bname;

}

public void setBname(String bname) { this.bname = bname;

}

public String getAuthor() {

return author;

}

public void setAuthor(String author) { this.author = author;

}

public String getPrice() {

return price;

}

public void setPrice(String price) { this.price = price;

}

public String getOther() {

return other;

}

public void setOther(String other) { this.other = other;

}

}

4.用户功能UserDao.java

package dao;

import java.util.List;

import java.sql.*;

import java.util.ArrayList;

import vo.bookinfo;

import https://www.doczj.com/doc/b018576250.html,er;

import vo.lendbook;

import dbc.JdbcUtil;

public class UserDao

{

public void add(User user) throws Exception{//添加用户Connection conn=null;

PreparedStatement ps=null;

try

{

conn=JdbcUtil.getConnection();

String sql="insert into user values(?,?)";

ps=conn.prepareStatement(sql);

ps.setString(1, user.getName());

ps.setString(2, user.getPwd());

ps.executeUpdate();

}

finally

{

JdbcUtil.free(null, ps, conn);

}

}

public void add_book(bookinfo book) throws Exception{//添加图书Connection conn=null;

PreparedStatement ps=null;

try

{

conn=JdbcUtil.getConnection();

String sql="insert into book_info values(?,?,?,?,?)";

ps=conn.prepareStatement(sql);

ps.setString(1, book.getBno());

ps.setString(2, book.getBname());

ps.setString(3, book.getAuthor());

ps.setString(4, book.getPrice());

ps.setString(5, book.getOther());

ps.executeUpdate();

}

finally

{

JdbcUtil.free(null, ps, conn);

}

}

public void lend_book(lendbook book) throws Exception{//借出图书Connection conn=null;

PreparedStatement ps=null;

try

{

conn=JdbcUtil.getConnection();

String sql="insert into lendbook values(?,?,?,?,?,?)";

ps=conn.prepareStatement(sql);

ps.setString(1, book.getUsername());

ps.setInt(2, Integer.parseInt(book.getBno()));

ps.setString(3, book.getBname());

ps.setString(4, book.getAuthor());

ps.setString(5, book.getPrice());

ps.setString(6, book.getOther());

ps.executeUpdate();

}

finally

{

JdbcUtil.free(null, ps, conn);

}

}

public List QueryAll() throws Exception//列出全部用户{

Connection conn=null; PreparedStatement ps=null;

ResultSet rs=null;

List userList=new ArrayList(); try

{

conn=JdbcUtil.getConnection();

String sql="select * from user";

ps=conn.prepareStatement(sql);

rs=ps.executeQuery();

while(rs.next()){

User user=new User();

user.setName(rs.getString(1));

user.setPwd(rs.getString(2));

userList.add(user);

}

}

finally

{

JdbcUtil.free(rs, ps, conn);

}

return userList;

}

public void delete(String bookno) throws Exception//删除图书

{

Connection conn=null;

PreparedStatement ps=null;

try{

conn=JdbcUtil.getConnection();

String sql="delete from book_info where bno=?";

ps=conn.prepareStatement(sql);

ps.setString(1, bookno);

ps.executeUpdate();

}

finally{

JdbcUtil.free(null, ps, conn);

}

}

public void returnbook(String bno,String username) throws Exception//归还图书

{

Connection conn=null;

PreparedStatement ps=null;

try{

conn=JdbcUtil.getConnection();

String sql="delete from lendbook where bno=? and username=?";

ps=conn.prepareStatement(sql);

ps.setString(1, bno);

ps.setString(2, username);

ps.executeUpdate();

}

finally{

JdbcUtil.free(null, ps, conn);

}

}

public void delete_user(String username) throws Exception//删除用户{

Connection conn=null;

PreparedStatement ps=null;

try{

conn=JdbcUtil.getConnection();

String sql="delete from user where name=?";

ps=conn.prepareStatement(sql);

ps.setString(1, username);

ps.executeUpdate();

}

finally{

JdbcUtil.free(null, ps, conn);

}

}

public int getPageCount() throws Exception{//分页Connection conn=null;

PreparedStatement ps=null;

ResultSet rs=null;

int recordCount=0,t1=0,t2=0;

try

{

conn=JdbcUtil.getConnection();

String sql="select count(*) from book_info";

ps=conn.prepareStatement(sql);

rs=ps.executeQuery();

rs.next();

recordCount=rs.getInt(1);

t1=recordCount%5;

t2=recordCount/5;

}

finally

{

JdbcUtil.free(null, ps, conn);

}

return t1==0?t2:t2+1;

}

public List QueryAll_book(int pageNo) throws Exception//列出全部图书

{

Connection conn=null;

PreparedStatement ps=null;

ResultSet rs=null;

int pageSize=5;

int startRecno=(pageNo-1)*pageSize;

List bookList=new ArrayList();

try

{

conn=JdbcUtil.getConnection();

String sql="select * from book_info order by bno limit ?,?";

ps=conn.prepareStatement(sql);

ps.setInt(1, startRecno);

ps.setInt(2, pageSize);

rs=ps.executeQuery();

while(rs.next()){

bookinfo book=new bookinfo();

book.setBno(rs.getString(1));

book.setBname(rs.getString(2));

book.setAuthor(rs.getString(3));

book.setPrice(rs.getString(4));

book.setOther(rs.getString(5));

bookList.add(book);

}

}

finally

{

JdbcUtil.free(rs, ps, conn);

}

return bookList;

}

public List QueryAll_lendbook(String username) throws Exception//列出已借图书

{

Connection conn=null;

PreparedStatement ps=null;

ResultSet rs=null;

List bookList=new ArrayList();

try

{

conn=JdbcUtil.getConnection();

String sql="select * from lendbook where username=?";

ps=conn.prepareStatement(sql);

ps.setString(1,username );

rs=ps.executeQuery();

while(rs.next()){

lendbook book=new lendbook();

book.setUsername(rs.getString(1));

book.setBno(rs.getString(2));

book.setBname(rs.getString(3));

book.setAuthor(rs.getString(4));

book.setPrice(rs.getString(5));

book.setOther(rs.getString(6));

bookList.add(book);

}

}

finally

{

JdbcUtil.free(rs, ps, conn);

}

return bookList;

}

public void modify_book(bookinfo book) throws Exception{//修改图书Connection conn=null;

PreparedStatement ps=null;

try

{

conn=JdbcUtil.getConnection();

String sql="update book_info set bname=?,author=?,price=?,other=? where bno=?";

ps=conn.prepareStatement(sql);

ps.setString(1, book.getBname());

ps.setString(2, book.getAuthor());

ps.setString(3, book.getPrice());

ps.setString(4, book.getOther());

ps.setString(5, book.getBno());

ps.executeUpdate();

}

finally

{

JdbcUtil.free(null, ps, conn);

}

相关主题
文本预览
相关文档 最新文档