源码地址:https://download.csdn.net/download/m0_51152186/85267357
相关教学视频下载:https://download.csdn.net/download/m0_51152186/83605403
一、安装并调试好集成开发环境
安装mysql数据库 (版本5 或 8均可)
安装集成开发环境
正确搭建 maven 环境,配置好maven仓库,配置好maven镜象
(1)创数据库表,名为 BookInfo, 并添加三条测试数据
要求有如下字段:
bookId //图书 ,自增主键
bookNo //图书编号
bookName //图书名称
writer //作者
price //单价
创建完表结构后,添入三条数据 。
(2) 同时, 针对上面的表,创建对应的实体bean ,名为 Book 。
BookInfo.java
package zhc.pojo;
import org.springframework.stereotype.Component;
@Component
public class BookInfo {
int bookId;
int bookNo;
String bookName;
String writer;
int price;
public int getBookId() {
return bookId;
}
public void setBookId(int bookId) {
this.bookId = bookId;
}
public int getBookNo() {
return bookNo;
}
public void setBookNo(int bookNo) {
this.bookNo = bookNo;
}
public String getBookName() {
return bookName;
}
public void setBookName(String bookName) {
this.bookName = bookName;
}
public String getWriter() {
return writer;
}
public void setWriter(String writer) {
this.writer = writer;
}
public int getPrice() {
return price;
}
public void setPrice(int price) {
this.price = price;
}
@Override
public String toString() {
return "BookInfo [bookId=" + bookId + ", bookNo=" + bookNo + ", bookName=" + bookName + ", writer=" + writer
+ ", price=" + price + "]";
}
}
3) 创建 mave结构的工程 。
4) 创建持久层, 以mybatis实现 。
创建BookMapper 接口 和 BookMapper.xml 映射文件
接口中要提供以下方法:
- 添加图书
- 查询出全部图书列表
- 查询图书条数
- 根据编号查询图书信息
- 根据编号删除图书信息
BookMapper.java
package zhc.Mapper;
import java.util.List;
import org.apache.ibatis.annotations.Mapper;
import zhc.pojo.BookInfo;
@Mapper
public interface BookMapper {
public void deleteBook(int bookNo);//删除图书按照id
public List<BookInfo> getBook();//查找全部图书
public BookInfo selectbyId(int bookNo);//按照id查询图书信息
public void addBook(BookInfo bookinfo);//添加图书
public int selectNum();//查询图书条数
}
BookMapper.xml
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://www.mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="zhc.Mapper.BookMapper">
<select id="getBook" resultType="zhc.pojo.BookInfo">
select * from BookInfo
</select>
<select id="selectbyId" resultType="zhc.pojo.BookInfo">
select * from BookInfo where
bookNo=#{bookNo}
</select>
<delete id="deleteBook">
delete from BookInfo where bookNo=#{bookNo}
</delete>
<insert id="addBook" parameterType="zhc.pojo.BookInfo">
insert into
BookInfo(bookId,bookNo,bookName,writer,price) values
(#{bookId},#{bookNo},#{bookName},#{writer},#{price})
</insert>
</mapper>
5) 完成主界面的设计。
main.jsp
<%@ page language="java" contentType="text/html; charset=utf-8" pageEncoding="utf-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>图书管理系统主页面</title>
</head>
<style>
.ulli li{
list-style-type:none;
font-size: 30px;
color:#000000;
}
}
</style>
<body background="img/1.jpg" style="background-repeat:no-repeat;background-size:100% 100%; background-attachment:fixed;">
<h1 align="center">图书管理系统</h1>
<hr/>
<ul align="center" class="ulli">
<img src="img/2.jpg" width=200px height=200px align="center">
<li><a href="/gotoAddBook"> 添加图书 </a></li>
<li><a href="/searchAll"> 图书列表</a></li>
<li><a href="/deletebook"> 删除图书 </a></li>
</ul>
</body>
</html>
6) 完成 “添加图书” 功能
点击 “添加图书”,进入到添加图书页面 book-add.jsp,并完成相应功能。
book-add.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>图书增加界面</title>
</head>
<body background="img/1.jpg" style="background-repeat:no-repeat;background-size:100% 100%; background-attachment:fixed;"align="center">
<h1 align="center">图书管理系统</h1>
<hr />
<h6 align="center">添加图书信息</h6>
<form action="/bookAdd" method="post" align="center">
图 书 id:<input name="bookId" value="${param.bookId}"> <br />
图书编号:<input name="bookNo" value="${param.bookNo}"> <br />
图书名称:<input name="bookName" value="${param.bookName}"> <br />
作 者:<input name="writer" value="${param.writer}"> <br />
单 价:<input name="price" value="${param.price}"> <br />
<input type="submit" value="提交" onclick='return confirm("确认提交吗")'>
</form>
${msg }
</body>
</html>
7) 点击图书列表, 完成全部图书列表的查询。
book-manger.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title></title>
<style>
table {
width: 40%;
border: 2px solid silver;
border-collapse: collapse;
}
td, th {
border: 1px solid silver;
border-collapse: collapse;
}
</style>
</head>
<body background="img/1.jpg" style="background-repeat:no-repeat;background-size:100% 100%; background-attachment:fixed;">
<h1>全部图书</h1>
<hr />
<table>
<tr>
<th>图书id</th>
<th>图书编号</th>
<th>图书名称</th>
<th>作者</th>
<th>单价</th>
</tr>
<c:forEach var="u" items="${book}">
<tr>
<td>${u.bookId }</td>
<td>${u.bookNo}</td>
<td>${u.bookName }</td>
<td>${u.writer }</td>
<td>${u.price }</td>
<td>
</td></tr>
</c:forEach>
</table>
<h6>共:${ book.size()} 条数据</h6>
</body>
</html>
(8)删除功能
点击上图列表后的 “删除图书” 超链接,跳转到删除图书界面。
book-delete.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>删除图书</title>
</head>
<body background="img/1.jpg" style="background-repeat:no-repeat;background-size:100% 100%; background-attachment:fixed;">
<hr />
<h4>请输入要删除的图书编号:</h4><br/>
<form action="/selectbyid" method="post">
<input name="bookNo" > <br />
<input type="submit" value="确定" onclick='return confirm("确认提交吗")'>
</form>
</body>
</html>
点击确定删除按钮后,删除该图片,并重新转回到图书列表。
二、运行截图。
主界面
图书列表
增加图书
删除图书