01: 流程分析和数据库建表阶段
02: 编写和配置过滤器(防止页面乱码)
03:项目搭建 & 工具类的实现 &依赖导入
04: 建立数据库的实体类(pojo)
05: 实现登录功能
06: 查询所有书籍功能
07:模糊查询功能
08:页面所有功能实现(附源码下载)
1. 数据库作业--图书管理系统( JSP + JDBC )实现
写一个简单的图书管理系统(CRUD功能),不用框架,下面我就从0开始开始开发吧。
1.1 大概流程
主要就是登录功能和对图书的CRUD。
1.2 数据库的设计
图书管理系统的E-R图
1.3 SQL建表
一起来愉快的搭建数据库吧 建议不要一开始就使用UI工具进行增删改查,否则对sql语句的掌握程度可能不够。
# 1.1 数据库建立阶段# 创建数据库 CQUTLMSCREATE DATABASE IF NOT EXISTS `CQUTLMS`;# 使用数据库 CQUTLMSUSE `CQUTLMS`;# 1.2 数据库表搭建阶段# 1.2.1 students表建立阶段: 这个表是学生的信息表, 以后登录就是通过这个表# 来进行数据的验证CREATE TABLE IF NOT EXISTS `students`(`stuId` VARCHAR(20) NOT NULL COMMENT "学号",`college` VARCHAR(20) NOT NULL COMMENT "学院",`profession` VARCHAR(20) NOT NULL COMMENT "专业",`stuName` VARCHAR(5) NOT NULL COMMENT "学生姓名",`startYear` VARCHAR(20) NOT NULL COMMENT "入学年份",`gender` VARCHAR(2) NOT NULL COMMENT "性别",`password` VARCHAR(20) NOT NULL COMMENT "登录密码",PRIMARY KEY(`stuId`))ENGINE =INNODB DEFAULT CHARSET=utf8;# 1.2.2 students表插入初始数据阶段INSERT INTO `students`(`stuId`,`college`,`profession`,`stuName`,`startYear`,`gender`,`password`) VALUES('1192304','两江人工智能学院','软件工程','周天骄','','男','123456'),('1192303','两江人工智能学院','软件工程','张朝春','','男','123456'),('11823021213','应用技术学院','软件工程','李旭','','男','123456'),('11823031214','应用技术学院','大数据','苟亮','','男','123456'),('11723021213','会计学院','电子商务','张有余','','男','123456'),('11723031214','会计学院','财务管理','雷磊','','男','123456');# 1.2.3 books表建立阶段: 这个表是图书馆的书籍CREATE TABLE IF NOT EXISTS `books`(`bookId` VARCHAR(20) NOT NULL COMMENT "图书编号",`bookName` VARCHAR(20) NOT NULL COMMENT "图书名",`author` VARCHAR(20) NOT NULL COMMENT "作者",`inventory` INT(5) NOT NULL COMMENT "库存",PRIMARY KEY(`bookId`))ENGINE =INNODB DEFAULT CHARSET=utf8;# 1.2.4 books表插入初始数据阶段INSERT INTO `books`(`bookId`,`bookName`,`author`,`inventory`) VALUES('1','Java原理及应用','李唯唯',200),('2','高级Java','王森',300),('3','离散数学','张立昂',150),('4','马原','王伟光',400),('5','数字图像处理','王利娟',350);# 1.2.5 建立mybooks表: 这个表存放的是学生借阅的图书的信息# 这里没有设置主键的原因:为了防止数据重复而报错,因为主键是独一无二的# 但是这个表以后肯定会存储大量相同的数据,因为每个学生的借阅信息都是存储在# 这个表格里面的。CREATE TABLE IF NOT EXISTS `mybooks`(`bookId` VARCHAR(20) NOT NULL COMMENT "图书编号",`bookName` VARCHAR(20) NOT NULL COMMENT "图书名",`author` VARCHAR(20) NOT NULL COMMENT "作者",`stuId` VARCHAR(20) NOT NULL COMMENT "学生Id")ENGINE =INNODB DEFAULT CHARSET=utf8;
运行结果:
books表
students表
mybooks表