基于web的图书管理系统设计与实现(可作为 毕业设计、课程设计 附演示地址)

作者 : admin 本文共7424个字,预计阅读时间需要19分钟 发布时间: 2024-06-16 共1人阅读

读者管理:根据账号、姓名查询读者基本信息,添加、修改、删除读者信息。

我的:查看个人资料,修改账户密码,退出系统。

04 工程结构及其说明


基于web的图书管理系统设计与实现(可作为 毕业设计、课程设计 附演示地址)插图

项目名称:manage_books

Package包说明:

基于web的图书管理系统设计与实现(可作为 毕业设计、课程设计 附演示地址)插图(1)

05 主要功能详细设计与实现


5.1 用户端–图书查询模块

用户访问图书查询模块时显示当前可以借阅图书,有按图书名称查询图书信息的功能,可以进行借书操作。

基于web的图书管理系统设计与实现(可作为 毕业设计、课程设计 附演示地址)插图(2)

其中查询功能的Servlet代码如下:

package com.cya.controller;

import java.io.IOException;

import java.util.ArrayList;

import javax.servlet.ServletException;

import javax.servlet.annotation.WebServlet;

import javax.servlet.http.HttpServlet;

import javax.servlet.http.HttpServletRequest;

import javax.servlet.http.HttpServletResponse;

import com.cya.dao.BookDao;

import com.cya.pojo.Book;

/**

  • Servlet implementation class selectServlet

*/

@WebServlet(“/selectServlet”)

public class selectServlet extends HttpServlet {

private static final long serialVersionUID = 1L;

/**

  • @see HttpServlet#HttpServlet()

*/

public selectServlet() {

super();

// TODO Auto-generated constructor stub

}

/**

  • @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)

*/

protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {

// TODO Auto-generated method stub

//response.getWriter().append(“Served at: “).append(request.getContextPath());

}

/**

  • @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)

*/

protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {

// TODO Auto-generated method stub

//doGet(request, response);

request.setCharacterEncoding(“UTF-8”);

response.setContentType(“text/html;charset=UTF-8”);

//因为在管理员界面和读者界面都有查找功能,为了将查找的结果返回正确的页面,设置了tip,tip=1表示管理员界面

int tip = Integer.parseInt(request.getParameter(“tip”));

String name = request.getParameter(“name”);

BookDao bookdao = new BookDao();

ArrayList data = bookdao.getLikeList(name);

//将获取的结果存入请求中

request.setAttribute(“data”, data);

String url = “”;

//转发不同的界面

if (tip == 1) {

url = response.encodeURL(“/books/admin/admin_books.jsp”);

} else {

url = response.encodeURL(“/books/user/select.jsp”);

}

//将请求转发

request.getRequestDispatcher(url).forward(request, response);

}

}

5.2 用户端–借阅信息模块

当普通用户借阅完图书,会在该模块自动生成借阅信息,如借阅日期,归还日期,也可在该模块进行还书,如下图所示。

基于web的图书管理系统设计与实现(可作为 毕业设计、课程设计 附演示地址)插图(3)

其中,还书功能的Servlet代码如下:

package com.cya.controller;

import java.io.IOException;

import java.io.PrintWriter;

import javax.servlet.ServletException;

import javax.servlet.annotation.WebServlet;

import javax.servlet.http.HttpServlet;

import javax.servlet.http.HttpServletRequest;

import javax.servlet.http.HttpServletResponse;

import javax.servlet.http.HttpSession;

import com.cya.pojo.Admin;

import com.cya.dao.AdminDao;

import com.cya.dao.BookDao;

/**

  • Servlet implementation class borrowServlet

*/

@WebServlet(“/borrowServlet”)

public class borrowServlet extends HttpServlet {

private static final long serialVersionUID = 1L;

/**

  • @see HttpServlet#HttpServlet()

*/

public borrowServlet() {

super();

// TODO Auto-generated constructor stub

}

/**

  • @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)

*/

protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {

// TODO Auto-generated method stub

//response.getWriter().append(“Served at: “).append(request.getContextPath());

//设置编码类型

request.setCharacterEncoding(“UTF-8”);

response.setContentType(“text/html;charset=UTF-8”);

BookDao bookdao = new BookDao();

//为了区分借书和还书的功能,设置tip,tip为1,表示借书

int tip = Integer.parseInt(request.getParameter(“tip”));

if (tip == 1) {

//获取图书id

int bid = Integer.parseInt(request.getParameter(“bid”));

HttpSession session = request.getSession();

Admin admin = new Admin();

String status=request.getParameter(“status”);

String id=“”;

if(status.equals(“user”)) {

//获取到存入session的读者id

id = (String) session.getAttribute(“uid”);

}

else {

//获取到存入session的aid读者id

id = (String) session.getAttribute(“aid”);

}

AdminDao admindao = new AdminDao();

//通过aid获取到读者的信息

admin = admindao.get_AidInfo2(id);

//将借阅记录存入数据表

bookdao.borrowBook(bid, admin);

response.sendRedirect(“/manage_books/books/user/select.jsp”);

} else {

//还书功能,获取借阅记录的hid

int hid = Integer.parseInt(request.getParameter(“hid”));

/**

  • 还书在管理员和读者界面都有,为了区分,设置了show字段,show为1表示读者界面

*/

int show = Integer.parseInt(request.getParameter(“show”));

//调用还书函数,改变status字段

bookdao.borrowBook2(hid);

if (show == 1) {

response.sendRedirect(“/manage_books/books/user/borrow.jsp”);

} else {

response.sendRedirect(“/manage_books/books/admin/admin_borrows.jsp”);

}

}

}

/**

  • @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)

*/

protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {

// TODO Auto-generated method stub

doGet(request, response);

}

}

5.3 管理员端–图书管理模块

管理员可以通过根据图书号 、图书名称,作者名称,出版社等查询图书信息。

基于web的图书管理系统设计与实现(可作为 毕业设计、课程设计 附演示地址)插图(4)

管理员登录系统以后,可以进行图书添加操作,这是管理员主要的输入信息部分,填写好各项信息后,单击保存按钮,系统将对这些信息进行处理。界面见下图所示:

基于web的图书管理系统设计与实现(可作为 毕业设计、课程设计 附演示地址)插图(5)

除此以外,管理员对已经添加好的图书信息有修改权限。

基于web的图书管理系统设计与实现(可作为 毕业设计、课程设计 附演示地址)插图(6)

其中,添加图书功能的代码如下:

package com.cya.controller;

import java.io.IOException;

import javax.servlet.ServletException;

import javax.servlet.annotation.WebServlet;

import javax.servlet.http.HttpServlet;

import javax.servlet.http.HttpServletRequest;

import javax.servlet.http.HttpServletResponse;

import com.cya.dao.BookDao;

/**

  • Servlet implementation class AddBookServlet

*/

@WebServlet(“/AddBookServlet”)

public class AddBookServlet extends HttpServlet {

private static final long serialVersionUID = 1L;

/**

  • @see HttpServlet#HttpServlet()

*/

public AddBookServlet() {

super();

// TODO Auto-generated constructor stub

}

/**

  • @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)

*/

protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {

// TODO Auto-generated method stub

// response.getWriter().append(“Served at: “).append(request.getContextPath());

}

/**

  • @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)

*/

protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {

// TODO Auto-generated method stub

// doGet(request, response);

//设置编码类型

request.setCharacterEncoding(“UTF-8”);

response.setContentType(“text/html;charset=UTF-8”);

//获取要添加图书的信息

String card = request.getParameter(“card”);

String name = request.getParameter(“name”);

String type = request.getParameter(“type”);

String autho = request.getParameter(“autho”);

String press = request.getParameter(“press”);

int num = Integer.parseInt(request.getParameter(“num”));

BookDao bookdao = new BookDao();

//调用函数,存入图书

bookdao.addBook(card, name, type, autho, press, num);

response.sendRedirect(“/manage_books/books/admin/admin_books.jsp”);

}

}

5.4 管理员端–图书分类模块

管理员在该界面可以增加、删除、修改图书分类信息,操作效果如图。

基于web的图书管理系统设计与实现(可作为 毕业设计、课程设计 附演示地址)插图(7)

基于web的图书管理系统设计与实现(可作为 毕业设计、课程设计 附演示地址)插图(8)

修改图书分类功能的代码如下:

package com.cya.controller;

import java.io.IOException;

import javax.servlet.ServletException;

import javax.servlet.annotation.WebServlet;

import javax.servlet.http.HttpServlet;

import javax.servlet.http.HttpServletRequest;

import javax.servlet.http.HttpServletResponse;

自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。

深知大多数前端工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则几千的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!

因此收集整理了一份《2024年Web前端开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。

基于web的图书管理系统设计与实现(可作为 毕业设计、课程设计 附演示地址)插图(9)

基于web的图书管理系统设计与实现(可作为 毕业设计、课程设计 附演示地址)插图(10)

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上前端开发知识点,真正体系化!

基于web的图书管理系统设计与实现(可作为 毕业设计、课程设计 附演示地址)插图(11)

由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!

如果你觉得这些内容对你有帮助,可以扫码获取!!(备注:前端)

基于web的图书管理系统设计与实现(可作为 毕业设计、课程设计 附演示地址)插图(12)

最后

基础知识是前端一面必问的,如果你在基础知识这一块翻车了,就算你框架玩的再6,webpack、git、node学习的再好也无济于事,因为对方就不会再给你展示的机会,千万不要因为基础错过了自己心怡的公司。前端的基础知识杂且多,并不是理解就ok了,有些是真的要去记。当然了我们是牛x的前端工程师,每天像背英语单词一样去背知识点就没必要了,只要平时工作中多注意总结,面试前端刷下题目就可以了。

什么?你问面试题资料在哪里,这不是就在你眼前吗(滑稽

图片转存中…(img-Jdmsbr6L-1712671849439)]

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上前端开发知识点,真正体系化!

[外链图片转存中…(img-m33mUgZ3-1712671849440)]

由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!

如果你觉得这些内容对你有帮助,可以扫码获取!!(备注:前端)

基于web的图书管理系统设计与实现(可作为 毕业设计、课程设计 附演示地址)插图(12)

最后

基础知识是前端一面必问的,如果你在基础知识这一块翻车了,就算你框架玩的再6,webpack、git、node学习的再好也无济于事,因为对方就不会再给你展示的机会,千万不要因为基础错过了自己心怡的公司。前端的基础知识杂且多,并不是理解就ok了,有些是真的要去记。当然了我们是牛x的前端工程师,每天像背英语单词一样去背知识点就没必要了,只要平时工作中多注意总结,面试前端刷下题目就可以了。

什么?你问面试题资料在哪里,这不是就在你眼前吗(滑稽

资料领取方式:戳这里获取

本站无任何商业行为
个人在线分享 » 基于web的图书管理系统设计与实现(可作为 毕业设计、课程设计 附演示地址)
E-->