图书管理系统
文末我会给出项目的GitHub地址
前言
本项目是一个基于javaWeb的图书管理系统,实现了登录、注册和基本的CRUD操作
使用的技术是Servlet,jsp,ajax,bootstrap等
项目没有进行数据库调优(主要还是自己太菜了),所以应该无法撑起大规模访问
项目介绍
数据库设计
因为项目比较轻量级,功能不是太复杂,所以设计的数据库表也不多
- book:
存储书本的信息,分别是书本ISBN编号,书本名称,书本价格,书本数目以及作者
- reader:
存储读者信息,包含读者的id,密码,以及真实姓名
- admin:
存储管理员信息,包含管理员的id,密码,以及真实姓名
- reader_book:
存储读者的借阅信息,包含自增长id,读者id,和图书的ISBN编号
前端界面一览
登录界面:
注册界面:
读者端首页:
借阅界面:
归还界面:
管理员首页:
图书管理界面:
用户管理界面:
项目内容描述
项目内容,我会分成前端和后端进行介绍,因为是CRUD项目,所以难免会出现很多重复的地方,我只会挑选重点来讲解
前端
前端的总体设计布局,是一个header(导航栏),一个footer(尾栏),和中间的内容
导航栏用来显示当前用户对象可以进行的操作
尾栏包含这个项目的版权信息(就是我的个人信息)
导航栏
因为读者的导航栏和管理员的导航栏布局类似,所以只介绍一个读者的
代码如下:
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<%--这里不包含taglib,因为重复包含,会导致500的错误--%>
<html>
<head>
<title>首栏</title>
<script>
$(document).ready(function () {
$("#resign_link").click(function () {
${
sessionScope.clear()}
window.location.href="./login.jsp";
});
});
</script>
<style>
#resign_link:hover {
cursor: pointer;
}
</style>
<link rel="stylesheet" type="text/css" href="./css/style.css">
</head>
<body>
<nav class="navbar navbar-default">
<div class="container-fluid">
<div class="navbar-header">
<a class="navbar-brand" href="#">图书管理</a>
</div>
<div class="collapse navbar-collapse header" id="bs-example-navbar-collapse-1">
<ul class="nav navbar-nav">
<li class="active"><a href="./readerindex.jsp">首页 <span class="sr-only">(current)</span></a></li>
<li><a href="./borrowbook.jsp">图书借阅</a></li>
<li><a href="./returnbook.jsp">图书归还</a></li>
</ul>
<ul class="nav navbar-nav navbar-right">
<li><a href="#">欢迎 ${sessionScope.username}</a></li>
<li><a id="resign_link">注销</a></li>
</ul>
</div>
</div>
</nav>
</body>
</html>
登录界面
代码如下:
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
<title>登录</title>
<%@include file="include/taglib.jsp"%>
<link rel="stylesheet" type="text/css" href="css/style.css"/>
<script type="text/javascript" src="js/login.js"></script>
<style>
html,body{
background-image:url("./img/bkground.jpg");
background-size: 100% 100%;
height: 100%;
}
</style>
<script>
$(document).ready(function () {
$("#btn_login").click(function () {
let identity = $("input[name=identity]:checked").val();
$.ajax({
//ajax传输json数据
type:"post",//请求方式
url:"/login",//请求传输的位置
data:{
"userid":$("#userid").val(),
"password":$("#password").val(),
"identity":$("input[name=identity]:checked").val()},
error:function () {
alert("登录错误");
},
success:function (data) {
if (data==-1) {
alert("请输入完整的信息");
} else if (data==-2) {
alert("账号必须是数字");
} else if (data==-3) {