基于javaweb+mysql的jsp+servlet网上图书馆管理系统(java+jsp+servlert+mysql+ajax)
运行环境
Java≥8、MySQL≥5.7、Tomcat≥8
开发工具
eclipse/idea/myeclipse/sts等均可配置运行
适用
课程设计,大作业,毕业设计,项目练习,学习演示等
功能说明
基于javaweb+mysql的JSP+Servlet网上图书馆管理系统(java+jsp+servlert+mysql+ajax)
一、项目简述
功能: 区分为管理员用户和普通用户,普通用户:用户登录,个 人信息修改,图书查询,用户借阅,用户归还,管理员用 户:图书馆里,归还管理,借阅信息查询,图书维护,分 类管理,读者管理等等功能。
二、项目运行
环境配置: Jdk1.8 + Tomcat8.5 + mysql + Eclispe (IntelliJ IDEA,Eclispe,MyEclispe,Sts 都支持)
项目技术: JSP + Servlert + html+ css + JavaScript + JQuery + Ajax等等。
// 获取到存入session的aid读者id
String aid = (String) session.getAttribute("aid");
AdminDao admindao = new AdminDao();
// 通过aid获取到读者的信息
admin = admindao.get_AidInfo2(aid);
// 将借阅记录存入数据表
bookdao.borrowBook(bid, admin);
if (show == 1) {
response.sendRedirect("/books/select.jsp");
} else {
response.sendRedirect("/books/bdtimes.jsp");
}
} else {
// 还书功能,获取借阅记录的hid
int hid = Integer.parseInt(request.getParameter("hid"));
/**
* 还书在管理员和读者界面都有,为了区分,设置了show字段,show为1表示读者界面
*/
int show = Integer.parseInt(request.getParameter("show"));
// 调用还书函数,改变status字段
bookdao.borrowBook2(hid);
if (show == 1) {
response.sendRedirect("/books/borrow.jsp");
} else {
response.sendRedirect("/books/admin_borrow.jsp");
}
}
}
/**
* @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse
* response)
*/
protected void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
// TODO Auto-generated method stub
doGet(request, response);
}
}
package com.rain.servlet;
/**
* Servlet implementation class selectServlet
*/
@WebServlet("/selectServlet")
public class selectServlet extends HttpServlet {
private static final long serialVersionUID = 1L;
/**
* @see HttpServlet#HttpServlet()
*/
public selectServlet() {
super();
// TODO Auto-generated constructor stub
}
/**
* @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse
* response)
*/
protected void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
// TODO Auto-generated method stub
// response.getWriter().append("Served at: ").append(request.getContextPath());
}
/**
* @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse
* response)
*/
protected void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
// TODO Auto-generated method stub
// doGet(request, response);
request.setCharacterEncoding("UTF-8");
response.setContentType("text/html;charset=UTF-8");
// 因为在管理员界面和读者界面都有查找功能,为了将查找的结果返回正确的页面,设置了tip,tip=1表示管理员界面
int tip = Integer.parseInt(request.getParameter("tip"));
String name = request.getParameter("name");
BookDao bookdao = new BookDao();
ArrayList<BookBean> data = bookdao.getLikeList(name);
// 将获取的结果存入请求中
request.setAttribute("data", data);
String url = "";
int tip = Integer.parseInt(request.getParameter("tip"));
String name = request.getParameter("name");
BookDao bookdao = new BookDao();
ArrayList<BookBean> data = bookdao.getLikeList(name);
// 将获取的结果存入请求中
request.setAttribute("data", data);
String url = "";
// 转发不同的界面
if (tip == 1) {
url = response.encodeURL("admin_book.jsp");
} else {
url = response.encodeURL("select.jsp");
}
// 将请求转发
request.getRequestDispatcher(url).forward(request, response);
}
}
package com.rain.servlet;
/**
* Servlet implementation class updateUserServlet
*/
@WebServlet("/updateUserServlet")
public class updateUserServlet extends HttpServlet {
private static final long serialVersionUID = 1L;
/**
* @see HttpServlet#HttpServlet()
*/
public updateUserServlet() {
super();
// TODO Auto-generated constructor stub
}
/**
* @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse
* response)
*/
protected void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
// TODO Auto-generated method stub
// response.getWriter().append("Served at: ").append(request.getContextPath());
}
// 修改读者的信息
request.setCharacterEncoding("UTF-8");
response.setContentType("text/html;charset=UTF-8");
String username = request.getParameter("username");
String password = request.getParameter("password");
String name = request.getParameter("name");
String email = request.getParameter("email");
String phone = request.getParameter("phone");
int lend_num = Integer.parseInt(request.getParameter("lend_num"));
int max_num = Integer.parseInt(request.getParameter("max_num"));
int aid = Integer.parseInt(request.getParameter("aid"));
AdminDao userdao = new AdminDao();
userdao.updateUser(aid, username, password, name, email, phone, lend_num, max_num);
response.sendRedirect("/books/admin_user.jsp");
}
}
package com.rain.servlet;
/**
* Servlet implementation class AddUserServlet
*/
@WebServlet("/AddUserServlet")
public class AddUserServlet extends HttpServlet {
private static final long serialVersionUID = 1L;
/**
* @see HttpServlet#HttpServlet()
*/
public AddUserServlet() {
super();
// TODO Auto-generated constructor stub
}
/**
* @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse
* response)
*/
protected void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
// TODO Auto-generated method stub
*/
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// TODO Auto-generated method stub
// doGet(request, response);
request.setCharacterEncoding("UTF-8");
response.setContentType("text/html;charset=UTF-8");
// 因为在管理员界面和读者界面都有查找功能,为了将查找的结果返回正确的页面,设置了tip,tip=1表示管理员界面
int tip = Integer.parseInt(request.getParameter("tip"));
String name = request.getParameter("name");
AdminDao admindao = new AdminDao();
ArrayList<AdminBean> data = admindao.getLikeList(name);
// 将获取的结果存入请求中
request.setAttribute("data", data);
String url = "";
// 转发不同的界面
if (tip == 1) {
url = response.encodeURL("admin_brtimes.jsp");
} else {
url = response.encodeURL("brtimes.jsp");
}
// 将请求转发
request.getRequestDispatcher(url).forward(request, response);
}
}
package com.rain.servlet;
/**
* Servlet implementation class bdtimesServlet
*/
@WebServlet("/bdtimesServlet")
super();
// TODO Auto-generated constructor stub
}
/**
* @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse
* response)
*/
protected void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
// TODO Auto-generated method stub
// response.getWriter().append("Served at: ").append(request.getContextPath());
}
/**
* @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse
* response)
*/
protected void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
// TODO Auto-generated method stub
// doGet(request, response);
// 设置编码类型
request.setCharacterEncoding("UTF-8");
response.setContentType("text/html;charset=UTF-8");
HttpSession session = request.getSession();
AdminBean adminbean = new AdminBean();
// 获取存到session的aid
String aid = (String) session.getAttribute("aid");
AdminDao admindao = new AdminDao();
// 通过aid获取到读者的信息
adminbean = admindao.get_AidInfo2(aid);
// 获取反馈问题的信息
String name = request.getParameter("name");
String page = request.getParameter("page");
String body = request.getParameter("body");
String phone = request.getParameter("phone");
ProblemDao problemdao = new ProblemDao();
// 调用函数存入反馈信息
problemdao.addProblem(adminbean, name, page, body, phone);
response.sendRedirect("/books/result.jsp");
}
}
package com.rain.servlet;
/**
* Servlet implementation class updateBookServlet
*/
@WebServlet("/updateBookServlet")
public class updateBookServlet extends HttpServlet {
private static final long serialVersionUID = 1L;
/**
* @see HttpServlet#HttpServlet()
*/
public updateBookServlet() {
super();
// TODO Auto-generated constructor stub
}
/**
* @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse
* response)
*/
protected void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
// TODO Auto-generated method stub
// response.getWriter().append("Served at: ").append(request.getContextPath());
}
/**
* @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse
* response)
*/
protected void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
// TODO Auto-generated method stub
// doGet(request, response);
// 修改图书信息
request.setCharacterEncoding("UTF-8");
response.setContentType("text/html;charset=UTF-8");
String card = request.getParameter("card");
String name = request.getParameter("name");
String type = request.getParameter("type");
private static final long serialVersionUID = 1L;
/**
* @see HttpServlet#HttpServlet()
*/
public borrowServlet() {
super();
// TODO Auto-generated constructor stub
}
/**
* @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse
* response)
*/
protected void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
// TODO Auto-generated method stub
// response.getWriter().append("Served at: ").append(request.getContextPath());
// 设置编码类型
request.setCharacterEncoding("UTF-8");
response.setContentType("text/html;charset=UTF-8");
BookDao bookdao = new BookDao();
// 为了区分借书和还书的功能,设置tip,tip为1,表示借书
int tip = Integer.parseInt(request.getParameter("tip"));
if (tip == 1) {
// 获取图书id
int bid = Integer.parseInt(request.getParameter("bid"));
int show = Integer.parseInt(request.getParameter("show"));
HttpSession session = request.getSession();
AdminBean admin = new AdminBean();
// 获取到存入session的aid读者id
String aid = (String) session.getAttribute("aid");
AdminDao admindao = new AdminDao();
// 通过aid获取到读者的信息
admin = admindao.get_AidInfo2(aid);
// 将借阅记录存入数据表
bookdao.borrowBook(bid, admin);
if (show == 1) {
response.sendRedirect("/books/select.jsp");
} else {
response.sendRedirect("/books/bdtimes.jsp");
}
} else {
// 还书功能,获取借阅记录的hid
int hid = Integer.parseInt(request.getParameter("hid"));
/**
/**
* Servlet implementation class selectServlet
*/
@WebServlet("/selectProblemServlet")
public class selectProblemServlet extends HttpServlet {
private static final long serialVersionUID = 1L;
/**
* @see HttpServlet#HttpServlet()
*/
public selectProblemServlet() {
super();
// TODO Auto-generated constructor stub
}
/**
* @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse
* response)
*/
protected void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
// TODO Auto-generated method stub
// response.getWriter().append("Served at: ").append(request.getContextPath());
}
/**
* @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse
* response)
*/
protected void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
// TODO Auto-generated method stub
// doGet(request, response);
request.setCharacterEncoding("UTF-8");
response.setContentType("text/html;charset=UTF-8");
String name = request.getParameter("name");
ProblemDao problemdao = new ProblemDao();
ArrayList<ProblemBean> data = problemdao.getLikeList(name);
// 将获取的结果存入请求中
request.setAttribute("data", data);
String url = "";
// 转发界面
url = response.encodeURL("admin_feedback.jsp");
// 将请求转发
request.getRequestDispatcher(url).forward(request, response);
}
}
String text = request.getParameter("code");
String code = (String) request.getSession().getAttribute("code");
AdminDao userdao = new AdminDao();
// 对账号和密码进行判断
boolean result = userdao.Login_verify(username, password);
HttpSession session = request.getSession();
if (code.equalsIgnoreCase(text)) {
// 判断输入正确
if (result) {
AdminBean adminbean = new AdminBean();
AdminDao admindao = new AdminDao();
// 更新账号和密码查找出读者的信息
adminbean = admindao.getAdminInfo(username, password);
// 将aid存入session中
session.setAttribute("aid", "" + adminbean.getAid());
// 设置session的失效时间
session.setMaxInactiveInterval(6000);
// 根据status的值来判断是管理员,还是读者,status=1为读者
if (adminbean.getStatus() == 1) {
response.sendRedirect("/books/index.jsp");
} else {
response.sendRedirect("/books/admin.jsp");
}
} else {
// 没有找到对应的账号和密码,返回重新登录
session.setAttribute("state", "密码错误");
response.sendRedirect("/books/login.jsp");
}
} else {
session.setAttribute("state", "验证码错误");
response.sendRedirect("/books/login.jsp");
}
}
}
package com.rain.servlet;
// response.getWriter().append("Served at: ").append(request.getContextPath());
}
/**
* @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
*/
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// TODO Auto-generated method stub
// doGet(request, response);
request.setCharacterEncoding("UTF-8");
response.setContentType("text/html;charset=UTF-8");
// 因为在管理员界面和读者界面都有查找功能,为了将查找的结果返回正确的页面,设置了tip,tip=1表示管理员界面
int tip = Integer.parseInt(request.getParameter("tip"));
String name = request.getParameter("name");
BookDao bookdao = new BookDao();
ArrayList<BookBean> data = bookdao.getLikeList(name);
// 将获取的结果存入请求中
request.setAttribute("data", data);
String url = "";
// 转发不同的界面
if (tip == 1) {
url = response.encodeURL("admin_bdtimes.jsp");
} else {
url = response.encodeURL("bdtimes.jsp");
}
// 将请求转发
request.getRequestDispatcher(url).forward(request, response);
}
}
package com.rain.servlet;
/**
* Servlet implementation class selectServlet
/**
* Servlet implementation class borrowServlet
*/
@WebServlet("/borrowServlet")
public class borrowServlet extends HttpServlet {
private static final long serialVersionUID = 1L;
/**
* @see HttpServlet#HttpServlet()
*/
public borrowServlet() {
super();
// TODO Auto-generated constructor stub
}
/**
* @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse
* response)
*/
protected void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
// TODO Auto-generated method stub
// response.getWriter().append("Served at: ").append(request.getContextPath());
// 设置编码类型
request.setCharacterEncoding("UTF-8");
response.setContentType("text/html;charset=UTF-8");
BookDao bookdao = new BookDao();
// 为了区分借书和还书的功能,设置tip,tip为1,表示借书
int tip = Integer.parseInt(request.getParameter("tip"));
if (tip == 1) {
// 获取图书id
int bid = Integer.parseInt(request.getParameter("bid"));
int show = Integer.parseInt(request.getParameter("show"));
HttpSession session = request.getSession();
AdminBean admin = new AdminBean();
// 获取到存入session的aid读者id
String aid = (String) session.getAttribute("aid");
throws ServletException, IOException {
// TODO Auto-generated method stub
// doGet(request, response);
request.setCharacterEncoding("UTF-8");
response.setContentType("text/html;charset=UTF-8");
// 因为在管理员界面和读者界面都有查找功能,为了将查找的结果返回正确的页面,设置了tip,tip=1表示管理员界面
int tip = Integer.parseInt(request.getParameter("tip"));
String name = request.getParameter("name");
BookDao bookdao = new BookDao();
ArrayList<BookBean> data = bookdao.getLikeList(name);
// 将获取的结果存入请求中
request.setAttribute("data", data);
String url = "";
// 转发不同的界面
if (tip == 1) {
url = response.encodeURL("admin_book.jsp");
} else {
url = response.encodeURL("select.jsp");
}
// 将请求转发
request.getRequestDispatcher(url).forward(request, response);
}
}
package com.rain.servlet;
/**
* Servlet implementation class updateUserServlet
*/
@WebServlet("/updateUserServlet")
public class updateUserServlet extends HttpServlet {
private static final long serialVersionUID = 1L;
/**
* @see HttpServlet#HttpServlet()
*/
public updateUserServlet() {
super();
/**
* Servlet implementation class RegisterServlet
*/
@WebServlet("/RegisterServlet")
public class RegisterServlet extends HttpServlet {
private static final long serialVersionUID = 1L;
/**
* @see HttpServlet#HttpServlet()
*/
public RegisterServlet() {
super();
// TODO Auto-generated constructor stub
}
/**
* @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse
* response)
*/
protected void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
// TODO Auto-generated method stub
// response.getWriter().append("Served at: ").append(request.getContextPath());
}
/**
* @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse
* response)
*/
protected void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
// TODO Auto-generated method stub
// doGet(request, response);
request.setCharacterEncoding("UTF-8");
response.setContentType("text/html;charset=UTF-8");
// 获取注册信息
String username = request.getParameter("username");
String password = request.getParameter("password");
String name = request.getParameter("name");
String email = request.getParameter("email");
String phone = request.getParameter("phone");
int lend_num = 30;
int max_num = 5;
AdminDao userdao = new AdminDao();
// 将注册信息存入数据库,再返回登录
userdao.Register(username, password, name, email, phone, lend_num, max_num);
response.sendRedirect("/books/login.jsp");
* response)
*/
protected void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
// TODO Auto-generated method stub
// response.getWriter().append("Served at: ").append(request.getContextPath());
// 设置编码类型
request.setCharacterEncoding("UTF-8");
response.setContentType("text/html;charset=UTF-8");
BookDao bookdao = new BookDao();
// 为了区分借书和还书的功能,设置tip,tip为1,表示借书
int tip = Integer.parseInt(request.getParameter("tip"));
if (tip == 1) {
// 获取图书id
int bid = Integer.parseInt(request.getParameter("bid"));
int show = Integer.parseInt(request.getParameter("show"));
HttpSession session = request.getSession();
AdminBean admin = new AdminBean();
// 获取到存入session的aid读者id
String aid = (String) session.getAttribute("aid");
AdminDao admindao = new AdminDao();
// 通过aid获取到读者的信息
admin = admindao.get_AidInfo2(aid);
// 将借阅记录存入数据表
bookdao.borrowBook(bid, admin);
if (show == 1) {
response.sendRedirect("/books/select.jsp");
} else {
response.sendRedirect("/books/bdtimes.jsp");
}
} else {
// 还书功能,获取借阅记录的hid
int hid = Integer.parseInt(request.getParameter("hid"));
/**
* 还书在管理员和读者界面都有,为了区分,设置了show字段,show为1表示读者界面
*/
int show = Integer.parseInt(request.getParameter("show"));
// 调用还书函数,改变status字段
bookdao.borrowBook2(hid);
if (show == 1) {
response.sendRedirect("/books/borrow.jsp");
} else {
response.sendRedirect("/books/admin_borrow.jsp");
}
}
// response.getWriter().append("Served at: ").append(request.getContextPath());
}
/**
* @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse
* response)
*/
protected void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
// TODO Auto-generated method stub
PrintWriter out = response.getWriter();
// 设置编码类型
request.setCharacterEncoding("UTF-8");
response.setContentType("text/html;charset=UTF-8");
// 这里为了简单,设置了tip,用来区分是修改密码功能,还是修改个人资料的功能,tip=1为修改密码
int tip = Integer.parseInt(request.getParameter("tip"));
// 获取发起请求页面的文件名称,这个在对应的jsp里面的表单填写,修改完成后就可以直接返回对应的页面
String url = request.getParameter("url");
HttpSession session = request.getSession();
AdminBean adminbean = new AdminBean();
// 获取存到session的aid
String aid = (String) session.getAttribute("aid");
AdminDao admindao = new AdminDao();
// 通过aid获取到读者的信息
adminbean = admindao.get_AidInfo2(aid);
// 修改密码
if (tip == 1) {
// 获取到输入的旧密码,新密码
String password = request.getParameter("password");
String password2 = request.getParameter("password2");
// 获取读者数据表中的密码
String old_password = adminbean.getPassword();
// 对旧密码进行比较,如果相同就修改,不相同就直接退出
if (old_password.equals(password)) {
admindao.updateUser(adminbean.getAid(), adminbean.getUsername(), password2, adminbean.getName(),
adminbean.getEmail(), adminbean.getPhone(), adminbean.getLend_num(), adminbean.getMax_num());
response.sendRedirect("/books/" + url + ".jsp");
} else {
out.write("<script type='text/javascript'>alert('password error');location.href='" + url
+ ".jsp'; </script>");
}
} else {
// 修改个人资料
// TODO Auto-generated constructor stub
}
/**
* @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse
* response)
*/
protected void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
// TODO Auto-generated method stub
// response.getWriter().append("Served at: ").append(request.getContextPath());
}
/**
* @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse
* response)
*/
protected void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
// TODO Auto-generated method stub
// doGet(request, response);
request.setCharacterEncoding("UTF-8");
response.setContentType("text/html;charset=UTF-8");
// 因为在管理员界面和读者界面都有查找功能,为了将查找的结果返回正确的页面,设置了tip,tip=1表示管理员界面
int tip = Integer.parseInt(request.getParameter("tip"));
String name = request.getParameter("name");
BookDao bookdao = new BookDao();
ArrayList<BookBean> data = bookdao.getLikeList(name);
// 将获取的结果存入请求中
request.setAttribute("data", data);
String url = "";
// 转发不同的界面
if (tip == 1) {
url = response.encodeURL("admin_book.jsp");
} else {
url = response.encodeURL("select.jsp");
}
// 将请求转发
request.getRequestDispatcher(url).forward(request, response);
}
}
package com.rain.servlet;
public AddUserServlet() {
super();
// TODO Auto-generated constructor stub
}
/**
* @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse
* response)
*/
protected void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
// TODO Auto-generated method stub
// response.getWriter().append("Served at: ").append(request.getContextPath());
}
/**
* @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse
* response)
*/
protected void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
// TODO Auto-generated method stub
// doGet(request, response);
// 设置编码类型
request.setCharacterEncoding("UTF-8");
response.setContentType("text/html;charset=UTF-8");
// 获取要添加的读者的信息
String username = request.getParameter("username");
String password = request.getParameter("password");
String name = request.getParameter("name");
String email = request.getParameter("email");
String phone = request.getParameter("phone");
int lend_num = Integer.parseInt(request.getParameter("lend_num"));
int max_num = Integer.parseInt(request.getParameter("max_num"));
AdminDao userdao = new AdminDao();
// 调用函数添加读者信息
userdao.Register(username, password, name, email, phone, lend_num, max_num);
response.sendRedirect("/books/admin_user.jsp");
}
}
package com.rain.servlet;
AdminDao admindao = new AdminDao();
// 通过aid获取到读者的信息
admin = admindao.get_AidInfo2(aid);
// 将借阅记录存入数据表
bookdao.borrowBook(bid, admin);
if (show == 1) {
response.sendRedirect("/books/select.jsp");
} else {
response.sendRedirect("/books/bdtimes.jsp");
}
} else {
// 还书功能,获取借阅记录的hid
int hid = Integer.parseInt(request.getParameter("hid"));
/**
* 还书在管理员和读者界面都有,为了区分,设置了show字段,show为1表示读者界面
*/
int show = Integer.parseInt(request.getParameter("show"));
// 调用还书函数,改变status字段
bookdao.borrowBook2(hid);
if (show == 1) {
response.sendRedirect("/books/borrow.jsp");
} else {
response.sendRedirect("/books/admin_borrow.jsp");
}
}
}
/**
* @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse
* response)
*/
protected void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
// TODO Auto-generated method stub
doGet(request, response);
}
}
package com.rain.servlet;
*/
protected void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
request.setCharacterEncoding("UTF-8");
response.setContentType("text/html;charset=UTF-8");
// 获取账号和密码
String username = request.getParameter("username");
String password = request.getParameter("password");
String text = request.getParameter("code");
String code = (String) request.getSession().getAttribute("code");
AdminDao userdao = new AdminDao();
// 对账号和密码进行判断
boolean result = userdao.Login_verify(username, password);
HttpSession session = request.getSession();
if (code.equalsIgnoreCase(text)) {
// 判断输入正确
if (result) {
AdminBean adminbean = new AdminBean();
AdminDao admindao = new AdminDao();
// 更新账号和密码查找出读者的信息
adminbean = admindao.getAdminInfo(username, password);
// 将aid存入session中
session.setAttribute("aid", "" + adminbean.getAid());
// 设置session的失效时间
session.setMaxInactiveInterval(6000);
// 根据status的值来判断是管理员,还是读者,status=1为读者
if (adminbean.getStatus() == 1) {
response.sendRedirect("/books/index.jsp");
} else {
response.sendRedirect("/books/admin.jsp");
}
} else {
// 没有找到对应的账号和密码,返回重新登录
session.setAttribute("state", "密码错误");
response.sendRedirect("/books/login.jsp");
}
} else {
session.setAttribute("state", "验证码错误");
response.sendRedirect("/books/login.jsp");
}
}
}
package com.rain.servlet;
}
/**
* @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse
* response)
*/
protected void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
// TODO Auto-generated method stub
// doGet(request, response);
request.setCharacterEncoding("UTF-8");
response.setContentType("text/html;charset=UTF-8");
// 获取注册信息
String username = request.getParameter("username");
String password = request.getParameter("password");
String name = request.getParameter("name");
String email = request.getParameter("email");
String phone = request.getParameter("phone");
int lend_num = 30;
int max_num = 5;
AdminDao userdao = new AdminDao();
// 将注册信息存入数据库,再返回登录
userdao.Register(username, password, name, email, phone, lend_num, max_num);
response.sendRedirect("/books/login.jsp");
}
}
package com.rain.servlet;
/**
* Servlet implementation class AddBookServlet
*/
@WebServlet("/AddBookServlet")
public class AddBookServlet extends HttpServlet {
private static final long serialVersionUID = 1L;
/**
* @see HttpServlet#HttpServlet()
*/
public AddBookServlet() {
super();
/**
* Servlet implementation class borrowServlet
*/
@WebServlet("/borrowServlet")
public class borrowServlet extends HttpServlet {
private static final long serialVersionUID = 1L;
/**
* @see HttpServlet#HttpServlet()
*/
public borrowServlet() {
super();
// TODO Auto-generated constructor stub
}
/**
* @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse
* response)
*/
protected void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
// TODO Auto-generated method stub
// response.getWriter().append("Served at: ").append(request.getContextPath());
// 设置编码类型
request.setCharacterEncoding("UTF-8");
response.setContentType("text/html;charset=UTF-8");
BookDao bookdao = new BookDao();
// 为了区分借书和还书的功能,设置tip,tip为1,表示借书
int tip = Integer.parseInt(request.getParameter("tip"));
if (tip == 1) {
// 获取图书id
int bid = Integer.parseInt(request.getParameter("bid"));
int show = Integer.parseInt(request.getParameter("show"));
HttpSession session = request.getSession();
AdminBean admin = new AdminBean();
// 获取到存入session的aid读者id
String aid = (String) session.getAttribute("aid");
AdminDao admindao = new AdminDao();
// 通过aid获取到读者的信息
admin = admindao.get_AidInfo2(aid);
// 将借阅记录存入数据表
@WebServlet("/CodeServlet")
public class CodeServlet extends HttpServlet {
private static final long serialVersionUID = 1L;
/**
* @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse
* response)
*/
protected void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
doPost(request, response);
}
/**
* @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse
* response)
*/
protected void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
request.setCharacterEncoding("utf-8");
BufferedImage bfi = new BufferedImage(80, 25, BufferedImage.TYPE_INT_RGB);
Graphics g = bfi.getGraphics();
g.fillRect(0, 0, 80, 25);
// 验证码字符范围
//char[] ch = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789".toCharArray();
char[] ch = "0123456789".toCharArray();
Random r = new Random();
int index;
StringBuffer sb = new StringBuffer(); // 保存字符串
for (int i = 0; i < 4; i++) {
index = r.nextInt(ch.length);
g.setColor(new Color(r.nextInt(255), r.nextInt(255), r.nextInt(255)));
Font font = new Font("宋体", 30, 20);
g.setFont(font);
g.drawString(ch[index] + "", (i * 20) + 2, 23);
sb.append(ch[index]);
}
// 设置验证码中的干扰线
for (int i = 0; i < 6; i++) {
// 随机获取干扰线的起点和终点
int xstart = (int) (Math.random() * 80);
int ystart = (int) (Math.random() * 25);
int xend = (int) (Math.random() * 80);
/**
* @see HttpServlet#HttpServlet()
*/
public AdminLoginServlet() {
super();
// TODO Auto-generated constructor stub
}
/**
* @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse
* response)
*/
protected void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
// TODO Auto-generated method stub
// response.getWriter().append("Served at: ").append(request.getContextPath());
}
/**
* @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse
* response)
*/
protected void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
// TODO Auto-generated method stub
request.setCharacterEncoding("UTF-8");
response.setContentType("text/html;charset=UTF-8");
// 获取账号和密码
String username = request.getParameter("username");
String password = request.getParameter("password");
if (username.equals("admin") && password.equals("123456")) {
response.sendRedirect("/books/admin_admin.jsp");
} else {
HttpSession session = request.getSession();
session.setAttribute("state", "密码错误");
response.sendRedirect("/books/admin_login.jsp");
}
}
}
package com.rain.servlet;
/**
* @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse
* response)
*/
protected void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
// TODO Auto-generated method stub
// response.getWriter().append("Served at: ").append(request.getContextPath());
}
/**
* @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse
* response)
*/
protected void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
// TODO Auto-generated method stub
// doGet(request, response);
request.setCharacterEncoding("UTF-8");
response.setContentType("text/html;charset=UTF-8");
String name = request.getParameter("name");
ProblemDao problemdao = new ProblemDao();
ArrayList<ProblemBean> data = problemdao.getLikeList(name);
// 将获取的结果存入请求中
request.setAttribute("data", data);
String url = "";
// 转发界面
url = response.encodeURL("admin_feedback.jsp");
// 将请求转发
request.getRequestDispatcher(url).forward(request, response);
}
}
package com.rain.servlet;
/**
* Servlet implementation class AdminLoginServlet
*/
@WebServlet("/AdminLoginServlet")
public class AdminLoginServlet extends HttpServlet {
private static final long serialVersionUID = 1L;
/**
* Servlet implementation class AdminServlet
*/
@WebServlet("/AdminServlet")
public class AdminServlet extends HttpServlet {
private static final long serialVersionUID = 1L;
/**
* @see HttpServlet#HttpServlet()
*/
public AdminServlet() {
super();
// TODO Auto-generated constructor stub
}
/**
* @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse
* response)
*/
protected void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
// TODO Auto-generated method stub
// response.getWriter().append("Served at: ").append(request.getContextPath());
}
/**
* @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse
* response)
*/
protected void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
// TODO Auto-generated method stub
PrintWriter out = response.getWriter();
// 设置编码类型
request.setCharacterEncoding("UTF-8");
response.setContentType("text/html;charset=UTF-8");
// 这里为了简单,设置了tip,用来区分是修改密码功能,还是修改个人资料的功能,tip=1为修改密码
int tip = Integer.parseInt(request.getParameter("tip"));
// 获取发起请求页面的文件名称,这个在对应的jsp里面的表单填写,修改完成后就可以直接返回对应的页面
String url = request.getParameter("url");
HttpSession session = request.getSession();