HTML、MySQL、JavaSE、JavaScript、jQuery、JSP、SSM
序号 |
功能列表 |
功能描述 |
分数 |
1 |
数据库设计 (20分) |
创建数据库 |
2 |
2 |
创建表结构及其约束 |
15 |
|
3 |
添加测试数据 |
3 |
|
4 |
框架搭建(10分) |
根据所用技术搭建项目框架 |
10 |
5 |
书籍信息页面 功能(15分) |
按要求正确进行界面的制作 |
5 |
6 |
查询书籍信息列表的后台代码 |
5 |
|
7 |
查询书籍信息列表AJAX获取数据展示到页面 |
5 |
|
11 |
借阅信息页面 功能(20分) |
按要求正确进行界面的制作 |
5 |
12 |
查询借书信息列表的后台代码 |
5 |
|
13 |
查询书籍信息列表的正确展示到页面 |
5 |
|
14 |
正确显示还书状态:已还书绿色,未归还红色 |
2 |
|
15 |
借书信息列表中的书籍名称的正确显示 |
1 |
|
16 |
根据还书状态显示操作:借阅结束文字,还书按钮 |
2 |
|
17 |
还书功能(9分) |
点击“还书”按钮:正确修改借书状态为“已还书” |
5 |
19 |
点击“还书”按钮:弹窗提示“还书成功” |
2 |
|
20 |
点击“还书”按钮:还书后,跳转借书信息页面 |
2 |
|
21 |
新增借阅信息 功能(21分) |
按要求正确进行界面的制作 |
5 |
22 |
借阅信息页面的表单非空验证 |
2 |
|
23 |
借阅信息页面的电话号码11位验证 |
2 |
|
24 |
可借的书籍名称由AJAX加载完成 |
5 |
|
25 |
新增借阅信息的后台代码 |
5 |
|
26 |
新增借阅信息后跳转到借阅信息页面 |
2 |
|
27 |
总体编程技术(5分) |
代码的书写规范,命名规范2和适当的注释3 |
5 |
数据库名称:bookdb |
||||
表:bookinfo (书籍表) |
||||
字段显示 |
字段名 |
数据类型 |
默认值 |
备注和说明 |
书籍编号 |
bookId |
int |
|
主键,自增 |
书籍名称 |
bookName |
varchar(50) |
|
不允许为空 |
书籍作者 |
bookWrite |
varchar(20) |
|
不允许为空 |
书籍介绍 |
bookContent |
text |
|
不允许为空 |
表:borrowInfo (借书信息表) |
||||
字段显示 |
字段名 |
数据类型 |
默认值 |
备注和说明 |
借阅编号 |
borrowId |
int |
|
主键,自增 |
学生姓名 |
stuName |
varchar(20) |
|
不允许为空 |
班级 |
clazz |
varchar(50) |
|
不允许为空 |
联系电话 |
tel |
varchar(11) |
|
不允许为空 |
借书日期 |
borrowDate |
date |
|
不允许为空 |
还书日期 |
returnDate |
date |
|
可以为空 |
还书状态 |
status |
int |
|
值为0或1,分别表示: 0:已还书 1:未归还 |
所借书籍编号 |
bookId |
int |
|
外键,所借书籍的编号 |
CREATE DATABASE bookdb CHARACTER set utf8;
use bookdb;
CREATE TABLE bookinfo(
bookId int PRIMARY KEY auto_increment,
bookName varchar(50) not null,
bookWrite varchar(20) not null,
bookContent text not null
);
CREATE TABLE borrowInfo(
borrowId int PRIMARY KEY auto_increment,
stuName varchar(20) not null,
clazz VARCHAR(50) not null,
tel varchar(11) not null,
borrowDate date not null,
returnDate date,
status int,
bookId int
);
INSERT into bookinfo VALUES(null,"三国演义","罗贯中","东汉末年到西晋初年...");
INSERT into bookinfo VALUES(null,"西游记","吴承恩","孙悟空出世及大闹天宫后...");
INSERT into bookinfo VALUES(null,"水浒传","施耐庵","梁山好汉反抗欺压...");
INSERT into bookinfo VALUES(null,"红楼梦","曹雪芹","贾史王薛四大家族的兴衰...");
INSERT into borrowInfo VALUES(null,"张三","2020级软件一班",18738171861,"2021-02-01","2021-02-09",0,1);
INSERT into borrowInfo VALUES(null,"李四","2020级软件二班",18738171862,"2021-02-03","2021-02-07",0,2);
INSERT into borrowInfo VALUES(null,"王五","2020级软件一班",18738171863,"2021-02-09",null,1,3);
INSERT into borrowInfo VALUES(null,"张三","2020级软件一班",18738171864,"2021-02-10",null,1,4);
springMVC
org.springframework.web.servlet.DispatcherServlet
contextConfigLocation
classpath:spring_config.xml
springMVC
/
default
*.js
*.css
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
$Title$
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
Title
书籍信息列表
书籍添加和管理暂未开通
查看借阅信息
书籍编号
书籍名称
书籍作者
书籍简介
${book.bookId}
${book.bookName}
${book.bookWrite}
${book.bookContent}
<%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
Title
查看书籍库存信息
新增借阅
编号
借阅人
班级
电话
借书日期
还书日期
归还情况
书籍名称
操作
${borrow.borrowId}
${borrow.stuName}
${borrow.clazz}
${borrow.tel}
${borrow.borrowDate}
${borrow.returnDate}
未归还
已归还
${borrow.bookInfo.bookName}
借阅结束
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
Title
package cn.hp.controller;
import cn.hp.model.BorrowInfo;
import cn.hp.service.GjbService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import javax.servlet.http.HttpServletRequest;
import java.util.List;
@Controller
public class GjbController {
@Autowired
private GjbService GjbService;
@RequestMapping("/showAll")
public String showAll(HttpServletRequest request){
List list=GjbService.showAll();
request.setAttribute("list",list);
return "showAll";
}
@RequestMapping("/borrow")
public String borrowAll(HttpServletRequest request){
List list=GjbService.borrowAll();
request.setAttribute("list",list);
return "borrow";
}
@RequestMapping("/add")
public String add(BorrowInfo borrowInfo){
boolean addFlag = GjbService.add(borrowInfo);
if(addFlag){
return "redirect:borrow";
}else{
return "forward:add.jsp";
}
}
@RequestMapping("/returnBook")
public String returnBook(String borrowId){
GjbService.returnBook(borrowId);
return "forward:borrow";
}
}
mapper接口
package cn.hp.dao;
import cn.hp.model.BorrowInfo;
import org.springframework.stereotype.Repository;
import java.util.List;
@Repository
public interface GjbMapper {
List selectAll();
List borrowAll();
int add(BorrowInfo borrowInfo);
void updateById(String borrowId);
}
insert into borrowinfo values (null,#{stuName},#{clazz},#{tel},now(),null,1,#{bookId})
update borrowinfo set returnDate = now() , status = 0 where borrowId = #{borrowId }
第一个BookInfo:
package cn.hp.model;
public class BookInfo {
private int bookId;
private String bookName;
private String bookWrite;
private String bookContent;
@Override
public String toString() {
return "BookInfo{" +
"bookId=" + bookId +
", bookName='" + bookName + '\'' +
", bookWrite='" + bookWrite + '\'' +
", bookContent='" + bookContent + '\'' +
'}';
}
public BookInfo(int bookId, String bookName, String bookWrite, String bookContent) {
this.bookId = bookId;
this.bookName = bookName;
this.bookWrite = bookWrite;
this.bookContent = bookContent;
}
public BookInfo() {
}
public int getBookId() {
return bookId;
}
public void setBookId(int bookId) {
this.bookId = bookId;
}
public String getBookName() {
return bookName;
}
public void setBookName(String bookName) {
this.bookName = bookName;
}
public String getBookWrite() {
return bookWrite;
}
public void setBookWrite(String bookWrite) {
this.bookWrite = bookWrite;
}
public String getBookContent() {
return bookContent;
}
public void setBookContent(String bookContent) {
this.bookContent = bookContent;
}
}
第二个borrowInfo 先写上面那个类 再写此类:
package cn.hp.model;
public class BorrowInfo {
private int borrowId;
private String stuName;
private String clazz;
private String tel;
private String borrowDate;
private String returnDate;
private int status;
private int bookId;
private BookInfo bookInfo;
@Override
public String toString() {
return "BorrowInfo{" +
"borrowId=" + borrowId +
", stuName='" + stuName + '\'' +
", clazz='" + clazz + '\'' +
", tel='" + tel + '\'' +
", borrowDate='" + borrowDate + '\'' +
", returnDate='" + returnDate + '\'' +
", status=" + status +
", bookId=" + bookId +
", bookInfo=" + bookInfo +
'}';
}
public int getBorrowId() {
return borrowId;
}
public void setBorrowId(int borrowId) {
this.borrowId = borrowId;
}
public String getStuName() {
return stuName;
}
public void setStuName(String stuName) {
this.stuName = stuName;
}
public String getClazz() {
return clazz;
}
public void setClazz(String clazz) {
this.clazz = clazz;
}
public String getTel() {
return tel;
}
public void setTel(String tel) {
this.tel = tel;
}
public String getBorrowDate() {
return borrowDate;
}
public void setBorrowDate(String borrowDate) {
this.borrowDate = borrowDate;
}
public String getReturnDate() {
return returnDate;
}
public void setReturnDate(String returnDate) {
this.returnDate = returnDate;
}
public int getStatus() {
return status;
}
public void setStatus(int status) {
this.status = status;
}
public int getBookId() {
return bookId;
}
public void setBookId(int bookId) {
this.bookId = bookId;
}
public BookInfo getBookInfo() {
return bookInfo;
}
public void setBookInfo(BookInfo bookInfo) {
this.bookInfo = bookInfo;
}
}
package cn.hp.service;
import cn.hp.dao.GjbMapper;
import cn.hp.model.BorrowInfo;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.List;
@Service
public class GjbService {
@Autowired
private GjbMapper GjbMapper;
public List showAll() {
return GjbMapper.selectAll();
}
public List borrowAll() {
return GjbMapper.borrowAll();
}
public boolean add(BorrowInfo borrowInfo) {
int i= GjbMapper.add(borrowInfo);
if(i>0){
return true;
}
return false;
}
public void returnBook(String borrowId) {
GjbMapper.updateById(borrowId);
}
}
这就是整个代码,对童鞋们有用的话记得一键三连QWQ