📄 books.java
字号:
request = res;
String newBookSN = db.toSql(request.getParameter("bookSN"));
//从SESSION中获取管理员ID
session = ses;
String supervisor = db.toSql( (String) session.getAttribute("supervisor"));
if (admin.isAdminBO(supervisor)) {
//查询图书是否在库
db.prepareStatement("select 是否在库 from Book where 图书编号 = ?");
db.setString(1, newBookSN);
ResultSet rs = db.executeQuery();
if (rs.next()) {
String bookIn = rs.getString(1);
rs.close();
if (bookIn.equals("1")) {
//删除图书
db.prepareStatement("delete from Book where 图书编号 = ?");
db.setString(1, newBookSN);
db.executeUpdate();
//关闭数据库连接
db.close();
return true;
}
else {
//关闭数据库连接
rs.close();
db.close();
errMsg = "图书编号为 " + newBookSN + " 的图书不在库,请确认其在库后再尝试!";
return false;
}
}
else {
//关闭数据库连接
rs.close();
db.close();
errMsg = "图书编号为 " + newBookSN + " 的图书不存在,请确认无误后再尝试!";
return false;
}
}
else {
errMsg = "管理编号为 " + supervisor + " 的管理员没有权限删除图书!";
return false;
}
}
public boolean updateBook(HttpServletRequest res, HttpSession ses) throws
Exception {
DataBase db = new DataBase();
admin admin = new admin();
//获取页面请求信息
request = res;
//从SESSION中获取管理员ID
session = ses;
String supervisor = db.toSql( (String) session.getAttribute("supervisor"));
if (admin.isAdminBO(supervisor)) {
//获取页面请求信息
bookSN = request.getParameter("bookSN");
bookName = request.getParameter("bookName");
bookAuthor = request.getParameter("bookAuthor");
bookPress = request.getParameter("bookPress");
bookISBN = request.getParameter("bookISBN");
bookClass = request.getParameter("bookClass");
bookLevel = request.getParameter("bookLevel");
bookIn = request.getParameter("bookIn");
bookPrice = request.getParameter("bookPrice");
bookComment = request.getParameter("bookComment");
try {
//更新图书信息
db.prepareStatement("update Book set 书名 = ?, 作者 = ?, 出版社 = ?, ISBN = ?, 分类 = ?, 借阅权限 = ?, 是否在库 = ?, 单价 = ?, 备注 = ? where 图书编号 = ?");
db.setString(1, bookName);
db.setString(2, bookAuthor);
db.setString(3, bookPress);
db.setString(4, bookISBN);
db.setString(5, bookClass);
db.setString(6, bookLevel);
db.setString(7, bookIn);
db.setString(8, bookPrice);
db.setString(9, bookComment);
db.setString(10, bookSN);
db.executeUpdate();
return true;
}
catch (SQLException e) {
errMsg = "修改图书信息失败,请检查各项图书数据无误后再尝试!";
System.out.println(e);
return false;
}
finally {
//关闭数据库连接
db.close();
}
}
else {
errMsg = "管理编号为 " + supervisor + " 的管理员没有权限修改图书信息!";
return false;
}
}
public boolean isBookExist(String newBookSN) throws Exception {
DataBase db = new DataBase();
//查询该图书的信息
db.prepareStatement("select 图书编号 from Book where 图书编号 = ?");
db.setString(1, db.toSql(newBookSN));
ResultSet rs = db.executeQuery();
if (rs.next()) {
//关闭数据库连接
rs.close();
db.close();
return true;
}
else {
//关闭数据库连接
rs.close();
db.close();
return false;
}
}
public boolean isBookIn(String newBookSN) throws Exception {
DataBase db = new DataBase();
//获取图书在库状态
db.prepareStatement("select 是否在库 from Book where 图书编号 = ?");
db.setString(1, db.toSql(newBookSN));
ResultSet rs = db.executeQuery();
rs.next();
if (rs.getString(1).equals("1")) {
//关闭数据库连接
rs.close();
db.close();
return true;
}
else {
//关闭数据库连接
rs.close();
db.close();
return false;
}
}
public boolean isBookExp(String newBookSN) throws Exception {
String CD; //当前日期
String RD; //还书日期
DataBase db = new DataBase();
DateTime dt = new DateTime();
//获取当前日期
CD = dt.getDate();
//获取还书日期
db.prepareStatement("select 还书日期 from Borrow where 图书编号 = ?");
db.setString(1, newBookSN);
ResultSet rs = db.executeQuery();
rs.next();
RD = rs.getString(1);
//关闭数据库连接
rs.close();
db.close();
if (dt.isExp(RD, CD)) {
return true;
}
else {
return false;
}
}
public boolean isExpBook(String newReaderSN) throws Exception {
String BD; //借书日期
String RD; //还书日期
DataBase db = new DataBase();
//获取该读者的图书借阅情况
db.prepareStatement("select * from Borrow where 读者编号 = ?");
db.setString(1, db.toSql(newReaderSN));
ResultSet rs = db.executeQuery();
if (rs.next()) {
DateTime dt = new DateTime();
rs.beforeFirst();
String CD = dt.getDate();
while (rs.next()) {
RD = rs.getString(5);
if (dt.isExp(RD, CD)) {
bookSN = rs.getString(1);
readerSN = rs.getString(2);
//关闭数据库连接
rs.close();
db.close();
return true;
}
}
//关闭数据库连接
rs.close();
db.close();
return false;
}
else {
//关闭数据库连接
rs.close();
db.close();
return false;
}
}
public boolean isBorrow(String newBookSN) throws
Exception {
DataBase db = new DataBase();
//查询是否有借阅信息
db.prepareStatement("select 图书编号 from Borrow where 图书编号 = ?");
db.setString(1, db.toSql(newBookSN));
ResultSet rs = db.executeQuery();
if (rs.next()) {
//关闭数据库连接
rs.close();
db.close();
return true;
}
else {
//关闭数据库连接
rs.close();
db.close();
return false;
}
}
public boolean canBorrow(String newReaderSN, String newBookSN) throws
Exception {
DataBase db = new DataBase();
//获取该读者的借阅权限
db.prepareStatement("select 借阅权限 from Reader where 读者编号 = ?");
db.setString(1, db.toSql(newReaderSN));
ResultSet rs = db.executeQuery();
rs.next();
int newRP = Integer.parseInt(rs.getString(1));
//获取欲借阅图书的借阅权限
db.prepareStatement("select 借阅权限 from Book where 图书编号 = ?");
db.setString(1, db.toSql(newBookSN));
rs = db.executeQuery();
rs.next();
int newBP = Integer.parseInt(rs.getString(1));
//关闭数据库连接
rs.close();
db.close();
if (newRP >= newBP) {
return true;
}
else {
return false;
}
}
public boolean isCBRL(String newBookSN) throws Exception {
DataBase db = new DataBase();
Readers reader = new Readers();
//获取图书借阅信息
db.prepareStatement("select 读者编号,续借 from Borrow where 图书编号 = ?");
db.setString(1, newBookSN);
ResultSet rs = db.executeQuery();
rs.next();
String newReaderSN = rs.getString(1);
int CB = Integer.parseInt(rs.getString(2));
//关闭数据库连接
rs.close();
db.close();
//获取续借次数和续借期限
reader.getReaderPower(newReaderSN);
int RPCC = reader.getRPCC(); //续借次数
if (CB >= RPCC) {
return true;
}
else {
return false;
}
}
public boolean getBorrow(String newBookSN) throws Exception {
DataBase db = new DataBase();
newBookSN = db.toSql(newBookSN);
//获取图书借阅信息
db.prepareStatement(
"select 读者编号,读者姓名,借书日期,还书日期 from Borrow where 图书编号 = ?");
db.setString(1, newBookSN);
ResultSet rs = db.executeQuery();
try {
rs.next();
readerSN = rs.getString(1);
readerName = rs.getString(2);
BD = rs.getString(3);
RD = rs.getString(4);
return true;
}
catch (SQLException e) {
return false;
}
finally {
//关闭数据库连接
rs.close();
db.close();
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -