📄 readers.java
字号:
package reader;
import java.sql.*;
import java.util.Vector;
import database.*;
import book.bookInfo;
import admin.admin;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpSession;
/**
* <p>Title: library</p>
* <p>Description: library</p>
* <p>Copyright: Copyright (c) 2007</p>
* <p>Company: </p>
* @author nino
* @version 0.1
*/
public class Readers {
//读者信息
private String readerSN; //读者编号
private String readerName; //读者姓名
private String readerSex; //读者姓名
private String readerWP; //读者单位
private String readerLocked; //读者状态
private String readerPower; //读者权限
private String readerCT; //读者创建时间
private String readerAvail; //读者有效期限
private String readerPhone; //读者电话
private String readerComment; //读者备注
//读者权限
private int RPBC; //限借书数
private int RPBT; //借阅期限
private int RPCC; //续借次数
private int RPCT; //续借期限
private Vector readerList; //读者列表
private int pageCount; //总页数
private int rowsCount; //总记录数
private int pageSize; //每页显示记录数
private int curPage; //当前显示的页面数
private javax.servlet.http.HttpServletRequest request; //建立页面请求
private javax.servlet.http.HttpSession session; //接收页面SESSION
private String errMsg; //错误信息
public String getErrMsg() {
return errMsg;
}
public Vector getReaderList() {
return readerList;
}
public int getPageCount() {
return pageCount;
}
public int getRowsCount() {
return rowsCount;
}
public int getPageSize() {
return pageSize;
}
public int getCurPage() {
return curPage;
}
public int getRPBC() {
return RPBC; //返回限借书数
}
public int getRPBT() {
return RPBT; //返回借阅期限
}
public int getRPCC() {
return RPCC; //返回续借次数
}
public int getRPCT() {
return RPCT; //返回续借期限
}
public String createReaderSN() throws
Exception {
DataBase db = new DataBase();
String newReaderSN = "0000000";
int intReaderSN;
try {
//从数据库中取出最大的编号
ResultSet rs = db.executeQuery("select max(读者编号) as 读者编号 from Reader");
rs.next();
newReaderSN = rs.getString(1);
//转换为INT格式以便增加
intReaderSN = Integer.parseInt(newReaderSN);
rs.close();
//编号是否大于9999999
if (intReaderSN < 9999999) {
//编号+1
intReaderSN++;
//转换为字符串
newReaderSN = Integer.toString(intReaderSN);
//字符串不满7位前面填充0
while (newReaderSN.length() < 7) {
newReaderSN = "0" + newReaderSN;
}
}
else {
//编号大于9999999
newReaderSN = "0000000";
}
return newReaderSN;
}
catch (SQLException e) {
System.out.println(e);
newReaderSN = "0000000";
}
return newReaderSN;
}
public boolean isReaderExist(String newReaderSN) throws Exception {
DataBase db = new DataBase();
//查询该读者的信息
db.prepareStatement("select 读者编号 from Reader where 读者编号 = ?");
db.setString(1, db.toSql(newReaderSN));
ResultSet rs = db.executeQuery();
if (rs.next()) {
rs.close();
return true;
}
else {
rs.close();
return false;
}
}
public boolean isReaderLocked(String newReaderSN) throws Exception {
DataBase db = new DataBase();
//查询该读者的信息
db.prepareStatement("select 是否锁定 from Reader where 读者编号 = ?");
db.setString(1, db.toSql(newReaderSN));
ResultSet rs = db.executeQuery();
rs.next();
if (rs.getString(1).equals("1")) {
return true;
}
else {
return false;
}
}
public boolean getAllReader() throws Exception {
DataBase db = new DataBase();
try {
ResultSet rs = db.executeQuery("select * from Reader");
readerList = new Vector();
while (rs.next()) {
readerInfo readerinfo = new readerInfo();
readerinfo.setReaderSN(rs.getString(1));
readerinfo.setReaderName(rs.getString(2));
readerinfo.setReaderSex(rs.getString(3));
readerinfo.setReaderWP(rs.getString(4));
readerinfo.setReaderLocked(rs.getString(5));
readerinfo.setReaderPower(rs.getString(6));
readerinfo.setReaderCT(rs.getString(7));
readerinfo.setReaderAvail(rs.getString(8));
readerinfo.setReaderPhone(rs.getString(9));
readerinfo.setReaderComment(rs.getString(10));
readerList.addElement(readerinfo);
}
rs.close();
return true;
}
catch (SQLException e) {
System.out.println(e);
return false;
}
}
public boolean getOneReader(String newReaderSN) throws Exception {
DataBase db = new DataBase();
//查询该读者的信息
db.prepareStatement("select * from Reader where 读者编号 = ?");
db.setString(1, db.toSql(newReaderSN));
ResultSet rs = db.executeQuery();
if (rs.next()) {
readerList = new Vector();
readerInfo readerinfo = new readerInfo();
readerinfo.setReaderSN(rs.getString(1));
readerinfo.setReaderName(rs.getString(2));
readerinfo.setReaderSex(rs.getString(3));
readerinfo.setReaderWP(rs.getString(4));
readerinfo.setReaderLocked(rs.getString(5));
readerinfo.setReaderPower(rs.getString(6));
readerinfo.setReaderCT(rs.getString(7));
readerinfo.setReaderAvail(rs.getString(8));
readerinfo.setReaderPhone(rs.getString(9));
readerinfo.setReaderComment(rs.getString(10));
readerList.addElement(readerinfo);
rs.close();
return true;
}
else {
rs.close();
return false;
}
}
public boolean searchReader(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.isAdminSR(supervisor)) {
readerSN = "%" + db.toSql(request.getParameter("readerSN")) + "%";
readerName = "%" + db.toSql(request.getParameter("readerName")) + "%";
readerSex = "%" + db.toSql(request.getParameter("readerSex")) + "%";
readerWP = "%" + db.toSql(request.getParameter("readerWP")) + "%";
readerLocked = "%" + db.toSql(request.getParameter("readerLocked")) + "%";
readerPower = "%" + db.toSql(request.getParameter("readerPower")) + "%";
String strPage = request.getParameter("page");
if (strPage != null) {
curPage = Integer.parseInt(strPage);
}
else {
curPage = 1;
}
try {
db.prepareStatement("select * from Reader where 读者编号 like ? and 读者姓名 like ? and 性别 like ? and 单位 like ? and 是否锁定 like ? and 借阅权限 like ?");
db.setString(1, readerSN);
db.setString(2, readerName);
db.setString(3, readerSex);
db.setString(4, readerWP);
db.setString(5, readerLocked);
db.setString(6, readerPower);
ResultSet rs = db.executeQuery();
sepPage sep = new sepPage();
sep.setRS(rs); //对应页面的记录
pageCount = sep.getPageCount(); //总页数
rowsCount = sep.getRowsCount(); //总记录数
pageSize = sep.getPageSize(); //每页显示记录数
sep.gotoPage(curPage); //传入页数
rs.absolute(sep.getRow()); //起始行
readerList = new Vector();
int i = 0;
while (i < pageSize & !rs.isAfterLast()) {
readerInfo readerinfo = new readerInfo();
readerinfo.setReaderSN(rs.getString(1));
readerinfo.setReaderName(rs.getString(2));
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -