位置: IT常识 - 正文

基于Java Web的图书管理系统(基于javaweb的图书馆管理系统)

编辑:rootadmin
基于Java Web的图书管理系统

目录

1.系统简要概述

2.系统主要用到的数据库表

3.主要功能

管理员:

用户:

 3.1管理员功能

3.11登录

3.12添加学生

3.13查看学生

 3.14删除学生

3.15添加书籍

 3.16查看书籍

3.2用户端功能

3.2.1登录

3.2.2注册 

3.2.3查询图书

3.2.4借阅书籍

3.2.5借阅信息查询

3.2.6还书

3.2.7我的基本信息

 4.代码部分

4.1 dao类

adminDao

 BookDao

 BorrowDao

 studentDao

 4.2 Servlet类

userlojinServlet

adminlojinServlet

managebookservlet

managestudentservlet

 4.3javaBean类

admin

student

book

4.4filter(过滤器类)

loginfilter

characterfilter


1.系统简要概述

推荐整理分享基于Java Web的图书管理系统(基于javaweb的图书馆管理系统),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:基于javaweb的图书管理系统论文,基于Java Web的图书管理系统项目,基于JavaWeb的图书购物网站的设计与实现,基于java web的图书管理系统,基于Java Web的图书管理系统项目,基于java web的图书管理系统,基于Java Web的图书管理系统项目的系统用例图,基于java web的图书管理系统,内容如对您有帮助,希望把文章链接给更多的朋友!

所用的思想是在MVC模式下进行开发,主要涉及到的内容有:JSP、javaBean、Servlet、JDBC、以及前端css、js,从具体实施来看主要涉及到的知识有:对jsp主要内置对象的熟练使用。例如,request请求、response响应、session会话、以及利用cookie来进行免登录,EL表达式,JSTL标签,Filter过滤器,Listener监视器,前端的灵活使用等。

2.系统主要用到的数据库表

admins(管理员)表管理员相关信息

Books(图书)表记录图书相关信息

Students(学生)表记录学生相关信息

Borrows(借书)表记录借阅相关信息

3.主要功能

此次系统分为两个板块,管理员和用户。管理员主要进行用户和图书的增删改查,用户则进行借还操作。

下面简述两者主要功能及实现方法,具体可见后文详解。

管理员:

增加学生、删除学生、查看学生、添加图书、修改图书、删除图书、查看图书

对学生的增删查,主要是在ManageStudent.Servlet里面进行。另外有专门处理学生的数据库类Student.Dao,首先增加和查看功能,直接利用前端提交的post请求,通过method字段在servlet里执行相对应的方法,将结果最终呈现在jsp页面中。至于删除的功能则是利用前端提交的get请求,将学生信息绑定在服务器前台,在后端通过request获取到相应数据,执行删除的方法。

对图书的增删改查类似以上机制,主要是在ManageBook.Servlet里面进行。同理也有Book.Dao,增删基本同添加学生一致。查看这里涉及到分页查看的机制,分页查看利用limit限制条件,对每次浏览的记录分条处理。通过后端每次传输的页值,将结果存储到session会话中,在jsp页面里,通过获取存储的对象输出到浏览器中。至于修改同查看一样,只不过这里,要将原先数据存到文本框内,需要通过get请求,将绑定的数据存储到会话中,然后重定向要修改的页面,中间借用EL表达式比较简洁。

用户:

查看图书、借书、借阅信息查看、还书、查看个人信息

当用户登录成功后,在左边功能框可查看所有图书信息,也可以查看具体类别的图书,这里主要是在userchoise.Servlet里面执行,当用户点击具体某类图书时,会将图书类别传输到服务器端,在servlet里面通过request获取类别,然后调用Book.Dao里面的方法将结果进行封装,在show.jsp页面里通过获取图书对象进行显示。每条图书信息后面附有借书操作功能,主要在Borrow.servlet里面进行,通过get机制将用户信息和图书信息上传到服务器,在servlet里面获取,然后利用Bean来声名对象,对借阅书籍进行更改,同时通过调用borrow.Dao,对图书信息数量进一步修改。

借阅信息的查看可直接在相应jsp里面,根据用户信息调用相应的Dao方法,来获取借阅书籍信息显示当浏览器上。在借阅信息里面可对图书进行归还操作,主要使用return.Servlet,在前端通过get机制,将学生信息和书籍信息上传到服务器端。在后端通过request获取,然后借用borrow.Dao,里面的方法对书籍数量进一步修改。查看个人信息比较见到,直接通过session会话,将事先绑定好的用户信息,直接读取,显示在相应页面中。

 3.1管理员功能

管理员主要管理学生和图书,在其项目里面有managestudent.servlet和managebook.servlet两个主要的servlet类。通过前端提供不同的请求来响应对应servlet里面的方法。

3.11登录

首先是管理员需要登录验证,判断数据库中是否有管理员账号相关信息。此次开发中,管理员账号为事先在数据库中录入,不支持注册和记住密码。管理员登录,需要请求adminlogin.servlet处理登录信息,如下(账号:admin 密码:admin):

图1- 1 管理员登录页面

若输入错误密码,则会提示密码错误重新登录(账号:admin 密码:123456):

图1- 2 管理员登录错误页面

3.12添加学生

添加学生功能,主要涉及到 student.dao(主要对学生进行数据库操纵,jdbc代码),student.bean(封装保存学生的基本信息),managestudent.servlet(用来后端操作控制添加学生信息的功能)以及addstusent.jsp(添加学生信息的前端页面)。添加信息的时候注意每项信息不能为空、以及添加的学生信息原数据库中是否有信息等需要在servlet里面做出判断。核心就是student.dao里面的连接数据库操纵语言,以及managestudent.servlet里面的对信息进行控制封装。如下:

图1-3 addstudent.jsp

3.13查看学生基于Java Web的图书管理系统(基于javaweb的图书馆管理系统)

查看学生功能是将数据库中的所有学生信息,展现在前端页面。这里主要涉及到studentDao、managestudent.servlet、student.javabean、showstudent.jsp等,在这里另外增加了一个分页查看的功能,主要思想就是在数据库里查询的时候将其分割,limit(beginpage,pagesize),然后通过查询的所有记录count/pagesize,得出总共的页数,然后在pageservlet里面,整理,最后输出到前端页面。

 3.14删除学生

管理员可以删除选中的学生,主要是利用前端绑定的机制,在get模式下,绑定用户的信息,通过前端传入的值,在后端进行相应的处理,在数据库中进行删除学生。所涉及到的类和前面几乎一致,不再重述。

3.15添加书籍

添加书籍类似添加学生,book.javabean(存有图书信息),managebook.Servlet(图书管理的servlet),以及对应的jsp页面.

 3.16查看书籍

管理员可查看所有图书信息。

 在show_book.jsp里面同时包含修改和删除图书的功能。两个方法对应不同的链接,跳转到相应的servlet中,在处理更改的时候需要用到重定向方法,将原先存到session中的数据,重定向到一个页面进行修改,同时该页面,要保留原有的信息,可以使用EL表达式来进行处理。

3.2用户端功能3.2.1登录

用户登录页面同管理员登录页面一致,且在同一个jsp里,分两个form表单完成。在用户登录界面增加了注册、和记住密码的功能。首先看登录功能,用户输入账号和密码,前端将数据提交到后端的userloginServlet来进行处理,通过后端的处理与数据库中的结果作比较。验证登录是否成功,下图为登录成功界面。

在用户进行登录的时候有一个复选框,为记住密码的操作。当用户点击记住密码的时候,下次登录不用在输入账号密码,直接点击登录即可。这是利用cookie的机制,通过创建cookie,将账号信息保存到硬盘中。此次系统设计的cookie时间为三天。具体效果如下:

 

 

3.2.2注册 

注册功能同管理员添加学生一致,只不过这个注册会跳转到userloginsrvlet里面进行处理。结合数据库往里边添加数据,同时也会对,信息是否填写完整,以及原有数据库里面是否有数据做出判断。

3.2.3查询图书

 等用户登录成功后,即可看到左面功能栏里面的功能,最上面的就是查看所有图书功能,接下来的一系列则是根据图书类别进行查看图书,方便用户浏览,快速查找结果。里面的一些显示功能主要是,利用超链接的target,来将查询的结果输出到,showBook.jsp页面上。

3.2.4借阅书籍

每个书籍后面附有借书操作的功能,借阅实现的方法主要是,利用前端绑定机制,将用户的信息,和图书信息整合到一块,后端来进行获取。

当borrowservlet,接收到用户信息和图书信息后,通过studentBean,bookBean以及borrowBean,来对借阅功能进行封装处理,这时需要borrowdao来进行数据库的读写操作。

在这里设置每位用户最大借阅量为10本,所以在servlet里面,做出判断借阅量是否大于最大借阅书籍量。来响应用户是否还能继续借阅。若能借阅的话,则通过后台,处理Bean数据,用户借阅量发生变化,图书量也发生变化。

 3.2.5借阅信息查询

借阅信息查询这个页面中,可以显示所有借的图书信息,并且在这个页面附有还书的功能,借阅信息主要是利用BorrowServlet和BorrowDAO里面根据用户信息,来获取当前用户下共计的借阅量。

3.2.6还书

 还书对应的则是returnservlet,根据用户信息,以及图书信息,来做出合理的判断,在通过BorrowDao,里面的数据库操作对借书量,图书量数据上做出相应的改变。

3.2.7我的基本信息

在我的基本信息里面可以查看除密码以外的所有信息,包括当前借阅量,可借图书量等。具体实施为通过后台数据库将个人信息展现到页面上。

 4.代码部分4.1 dao类adminDaopackage com.demo.dao;import com.demo.javabean.*;import java.sql.SQLException;public class AdminDAO {DBAccess db ;public boolean valid(String username, String password) {boolean isValid = false;db=new DBAccess();if(db.createConn()) {try {String sql="select * from admins where admin=? and password=?";db.pre=db.getConn().prepareStatement(sql);db.pre.setString(1, username);db.pre.setString(2, password);db.setRs(db.pre.executeQuery());if(db.getRs().next()){isValid=true;}}catch (Exception e) {// TODO: handle exception}finally {db.closeRs();try {db.pre.close();} catch (SQLException e) {// TODO 自动生成的 catch 块e.printStackTrace();}db.closeConn();}}return isValid ;}public boolean isExist(String username) {boolean isExist = false;db = new DBAccess();if(db.createConn()) {try {String sql="select * from admins where admin=?";db.pre=db.getConn().prepareStatement(sql);db.pre.setString(1,username );db.setRs(db.pre.executeQuery());if(db.getRs().next()){isExist=true;}} catch (Exception e) {// TODO: handle exception}finally {db.closeRs();if(db.pre!=null){try {db.pre.close();} catch (Exception e2) {// TODO: handle exception}}db.closeConn();}}return isExist;}} BookDaopackage com.demo.dao;import com.demo.javabean.*;import java.sql.ResultSet;import java.sql.SQLException;import java.util.ArrayList;public class BookDAO {DBAccess db;private Books book;public ArrayList<Books> getAllBooks() throws Exception{db=new DBAccess();//db.setSql("SELECT * FROM books");ArrayList<Books> books = new ArrayList<Books>();if(db.createConn()){//db.query(sql);String sql= "SELECT * FROM books";db.query(sql);while(db.getRs().next()){book = this.assemble(db.getRs());books.add(book);}}db.closeRs();db.closeStm();db.closeConn();return books;}public ArrayList<Books> getBooksByCategory(String category) throws Exception{//在这里进行分页判断ArrayList<Books> books = new ArrayList<Books>();DBAccess db=new DBAccess();java.sql.PreparedStatement pre = null;if(db.createConn()){//db.query(sql);String sql = "select * from books where category = ? ";pre=db.getConn().prepareStatement(sql);pre.setString(1, category);//pre.setInt(2, (page-1)*Students.PAGE_SIZE);//pre.setInt(3, Students.PAGE_SIZE);db.setRs(pre.executeQuery());while(db.getRs().next()){book = this.assemble(db.getRs());books.add(book);}}db.closeRs();db.closeStm();pre.close();db.closeConn();int a=books.size();System.out.println(a);return books;}public void addBook(String name,String author,String intro,String amount,String category) throws Exception{// boolean flag = false;DBAccess db = new DBAccess();if(db.createConn()){String sql = "insert into books(name,author,intro,amount,category) values('"+name+"','"+author+"','"+intro+"','"+amount+"','"+category+"')";db.update(sql);db.closeStm();db.closeConn();}}public boolean delbook(String name)throws Exception{//删除书籍DBAccess db = new DBAccess();boolean flag=false;if(db.createConn()){//db.setSql("delete from books where name = ?");String sql="delete from books where name = ?";db.pre=db.getConn().prepareStatement(sql);db.pre.setString(1, name);if(db.pre.executeUpdate()>0)flag=true;//String sql = "delete from books where name = '"+name+"'";//db.update(sql);//db.closeStm();//db.closeConn();}db.closeRs();db.closeStm();db.pre.close();db.closeConn();return flag;}public boolean isExist(String name) {boolean isExist = false;DBAccess db = new DBAccess();if(db.createConn()) {String sql = "select * from books where name='"+name+"'";db.query(sql);if(db.next()) {isExist = true;}db.closeRs();db.closeStm();db.closeConn();}return isExist;}public boolean updateBook(Books book) throws Exception{//借还更新 主要书籍数量boolean flag = false;DBAccess db=new DBAccess();String sql = "UPDATE books SET amount=? WHERE id=?";java.sql.PreparedStatement pre=null;if(db.createConn()){pre=db.getConn().prepareStatement(sql);//conn = OpenConnection.getConnection();// ps = conn.prepareStatement(sql_str);pre.setInt(1,book.getAmount());pre.setInt(2,book.getId());if(pre.executeUpdate() > 0) flag = true;}db.closeRs();db.closeStm();pre.close();db.closeConn();// this.release();// OpenConnection.closeConnection(conn);return flag;}public boolean updateBook2(Books book) throws Exception{//修改更新 修改图书信息boolean flag = false;DBAccess db=new DBAccess();//db.setSql("UPDATE books SET name=?,author=?,amount=?,category=? where id=?");if(db.createConn()){String sql="UPDATE books SET name=?,author=?,amount=?,category=? where id=?";db.pre=db.getConn().prepareStatement(sql);db.pre.setString(1, book.getName());db.pre.setString(2, book.getAuthor());db.pre.setInt(3, book.getAmount());db.pre.setString(4, book.getCategory());db.pre.setInt(5, book.getId());if(db.pre.executeUpdate() > 0) flag = true;}db.closeRs();db.closeStm();db.pre.close();db.closeConn();return flag;}public Books getBookById(int id) throws Exception{DBAccess db=new DBAccess();String sql = "SELECT * FROM books WHERE id = ?";java.sql.PreparedStatement pre=null;if(db.createConn()){pre=db.getConn().prepareStatement(sql);// conn = OpenConnection.getConnection();// ps = conn.prepareStatement(sql_str);pre.setInt(1,id);db.setRs(pre.executeQuery());if (db.getRs().next()) book = this.assemble(db.getRs());}db.closeRs();db.closeStm();pre.close();db.closeConn();//this.release();// OpenConnection.closeConnection(conn);return book;}public Books assemble(ResultSet rs) throws Exception{book = new Books();book.setId(rs.getInt("id"));book.setName(rs.getString("name"));book.setAuthor(rs.getString("author"));book.setIntro(rs.getString("intro"));book.setAmount(rs.getInt("amount"));book.setCategory(rs.getString("category"));return book;}public ArrayList<Books> findAll(Integer page){//分页查询信息DBAccess db=new DBAccess();ArrayList<Books> list=new ArrayList<Books>();try {if(db.createConn()){String sql="select * from books limit ?,? ";db.pre=db.getConn().prepareStatement(sql);db.pre.setInt(1, (page-1)*Students.PAGE_SIZE);db.pre.setInt(2, Students.PAGE_SIZE);db.setRs(db.pre.executeQuery());while(db.getRs().next()){Books book=new Books();book.setId(db.getRs().getInt("id"));book.setName(db.getRs().getString("name"));book.setAuthor(db.getRs().getString("author"));book.setCategory(db.getRs().getString("category"));book.setAmount(db.getRs().getInt("amount"));list.add(book);}db.closeRs();db.pre.close();db.closeConn();}} catch( SQLException e) {e.printStackTrace();}return list;}public ArrayList<Books> getBooksByCategory(String category,Integer page) throws Exception{//在这里进行分页判断(学生端)ArrayList<Books> books = new ArrayList<Books>();DBAccess db=new DBAccess();java.sql.PreparedStatement pre = null;if(db.createConn()){//db.query(sql);String sql = "select * from books where category = ? limit ?,?";pre=db.getConn().prepareStatement(sql);pre.setString(1, category);pre.setInt(2, (page-1)*Students.PAGE_SIZE);pre.setInt(3, Students.PAGE_SIZE);db.setRs(pre.executeQuery());while(db.getRs().next()){book = this.assemble(db.getRs());books.add(book);}}db.closeRs();db.closeStm();pre.close();db.closeConn();int a=books.size();System.out.println(a);return books;}public int countPage(String singal){//查询记录总数DBAccess db=new DBAccess();int count=0;try {if(db.createConn()){String sql;if(!"1".equals(singal)){sql="select count(*) from books where category=?";db.pre=db.getConn().prepareStatement(sql);db.pre.setString(1, singal);db.setRs(db.pre.executeQuery());}else {sql="select count(*) from books";db.pre=db.getConn().prepareStatement(sql);db.setRs(db.pre.executeQuery());}if(db.getRs().next()){count=db.getRs().getInt(1);}}} catch( SQLException e) {e.printStackTrace();}finally {db.closeRs();try {if(db.pre!=null){db.pre.close();}} catch (Exception e2) {// TODO: handle exception}db.closeConn();}return count;}} BorrowDaopackage com.demo.dao;import com.demo.javabean.*;import java.sql.ResultSet;import java.util.ArrayList;import com.demo.javabean.DBAccess;public class BorrowDAO { private Borrows borrow = null; public ArrayList<Borrows> getAllBorrows() throws Exception{ DBAccess db=new DBAccess(); java.sql.PreparedStatement pre=null; String sql = "SELECT * FROM borrows"; ArrayList<Borrows> borrows = new ArrayList<Borrows>(); //conn = OpenConnection.getConnection(); // ps = conn.prepareStatement(sql_str); //rs = ps.executeQuery();if(db.createConn()){pre=db.getConn().prepareStatement(sql);db.setRs(pre.executeQuery());//db.query(sql); while(db.getRs().next()) { borrow = this.assemble(db.getRs()); borrows.add(borrow); }} //this.release();db.closeRs();db.closeStm();db.closeConn(); // OpenConnection.closeConnection(conn); return borrows; } public ArrayList<Borrows> getBorrowsBySId(int s_id) throws Exception{ ArrayList<Borrows> borrows = new ArrayList<Borrows>(); DBAccess db=new DBAccess(); java.sql.PreparedStatement pre=null; String sql = "SELECT * FROM borrows WHERE s_id = ?"; if(db.createConn()){ pre=db.getConn().prepareStatement(sql); pre.setInt(1, s_id); db.setRs(pre.executeQuery()); while (db.getRs().next()){ borrow = this.assemble(db.getRs()); borrows.add(borrow); } } db.closeRs(); db.closeStm(); pre.close(); db.closeConn(); return borrows; } public boolean addBorrows(Borrows borrow) throws Exception{ boolean flag = false; DBAccess db=new DBAccess(); java.sql.PreparedStatement pre=null; String sql = "INSERT INTO borrows VALUES(?,?,?)"; if(db.createConn()){ pre=db.getConn().prepareStatement(sql); // conn = OpenConnection.getConnection(); // ps = conn.prepareStatement(sql_str); pre.setInt(1,borrow.getS_id()); pre.setInt(2,borrow.getB_id()); pre.setInt(3,borrow.getAmount()); if(pre.executeUpdate() > 0) flag = true; } //this.release(); db.closeRs(); pre.close(); db.closeConn(); //OpenConnection.closeConnection(conn); return flag; } public boolean deleteBorrow(Borrows borrow) throws Exception{ boolean flag = false; DBAccess db=new DBAccess(); java.sql.PreparedStatement pre=null; String sql = "DELETE FROM borrows WHERE s_id = ? AND b_id = ? AND amount = ?"; if(db.createConn()){ pre=db.getConn().prepareStatement(sql); //conn = OpenConnection.getConnection(); //ps =conn.prepareStatement(sql_str); pre.setInt(1,borrow.getS_id()); pre.setInt(2,borrow.getB_id()); pre.setInt(3,borrow.getAmount()); if(pre.executeUpdate() > 0) flag = true; } return flag; } public Borrows getBorrowById(int s_id, int b_id) throws Exception{ DBAccess db=new DBAccess(); String sql = "SELECT * FROM borrows WHERE s_id = ? AND b_id = ?"; java.sql.PreparedStatement pre=null; if(db.createConn()){ pre=db.getConn().prepareStatement(sql); //conn = OpenConnection.getConnection(); //ps = conn.prepareStatement(sql_str); pre.setInt(1,s_id); pre.setInt(2,b_id); //rs = ps.executeQuery(); db.setRs(pre.executeQuery()); if(db.getRs().next()) borrow = this.assemble(db.getRs()); } db.closeRs(); db.closeStm(); pre.close(); db.closeConn(); // this.release(); // OpenConnection.closeConnection(conn); return borrow; } public boolean updateBorrow(Borrows borrow) throws Exception{ boolean flag = false; DBAccess db=new DBAccess(); String sql = "UPDATE borrows SET amount = ? WHERE s_id = ? AND b_id = ?"; java.sql.PreparedStatement pre=null; if(db.createConn()){ pre=db.getConn().prepareStatement(sql); //conn = OpenConnection.getConnection(); // ps = conn.prepareStatement(sql_str); pre.setInt(1,borrow.getAmount()); pre.setInt(2,borrow.getS_id()); pre.setInt(3,borrow.getB_id()); if(pre.executeUpdate() > 0) flag = true; } db.closeRs(); db.closeStm(); pre.close(); db.closeConn(); //this.release(); //OpenConnection.closeConnection(conn); return flag; } public Borrows assemble(ResultSet rs) throws Exception{ borrow = new Borrows(); borrow.setS_id(rs.getInt("s_id")); borrow.setB_id(rs.getInt("b_id")); borrow.setAmount(rs.getInt("amount")); return borrow; }} studentDaopackage com.demo.dao;import java.sql.ResultSet;import java.sql.SQLException;import java.util.ArrayList;import com.demo.javabean.*;/***@author:FQX*@version:2022年3月28日下午7:43:34*类说明*/public class StudentDAO {DBAccess db;public boolean valid(String username, String password) {boolean isValid = false;//DBAccess db = new DBAccess();db = new DBAccess();if(db.createConn()) {//String sql = "select * from students where user='"+username+"' and password='"+password+"'";//db.setSql("select * from students where user='"+username+"' and password='"+password+"'");String sql="select * from students where user= ? and password= ?";try {//这里引用prepareStatement是为了防止SQL注入db.pre=db.getConn().prepareStatement(sql);db.pre.setString(1, username);db.pre.setString(2, password);db.setRs(db.pre.executeQuery());if(db.getRs().next()){isValid=true;}} catch (SQLException e) {// TODO 自动生成的 catch 块e.printStackTrace();}finally {db.closeRs();if(db.pre!=null)try {db.pre.close();} catch (SQLException e) {// TODO 自动生成的 catch 块e.printStackTrace();}db.closeConn();}//db.query(sql);//db.query(db.getSql());//if(db.next()) {//isValid = true;//}//db.closeRs();//db.closeStm();//db.closeConn();}return isValid ;}public boolean isExist(String username) {boolean isExist = false;db = new DBAccess();if(db.createConn()) {//String sql = "select * from students where user='"+username+"'";//db.setSql("select * from students where user='"+username+"'");String sql="select * from students where user=?";try {db.pre=db.getConn().prepareStatement(sql);db.pre.setString(1, username);db.setRs(db.pre.executeQuery());if(db.getRs().next()){isExist=true;}} catch (SQLException e) {// TODO 自动生成的 catch 块e.printStackTrace();}finally {db.closeRs();if(db.pre!=null){try {db.pre.close();} catch (Exception e2) {// TODO: handle exception}db.closeConn();}}//db.query(sql);//db.query(db.getSql());//if(db.next()) {//isExist = true;//}//db.closeRs();//db.closeStm();//db.closeConn();}return isExist;}public boolean add(Students student) throws Exception{//添加boolean flag = false;db=new DBAccess();String sql = "INSERT INTO students(user,password,department,grade,classes,email,amount) VALUES(?,?,?,?,?,?,?)";if(db.createConn()){db.pre=db.getConn().prepareStatement(sql);db.pre.setString(1,student.getUser());db. pre.setString(2,student.getPassword());db.pre.setString(3,student.getDepartment());db.pre.setString(4,student.getGrade());db. pre.setString(5,student.getClasses());db.pre.setString(6,student.getEmail());db.pre.setInt(7,student.getAmount());if(db.pre.executeUpdate() > 0) flag = true;}db.closeRs();db.closeStm();db.pre.close();db.closeConn();return flag;}public void del(String usename){//删除DBAccess db = new DBAccess();if(db.createConn()) {String sql = "delete from students where user = '"+usename+"'";db.update(sql);db.closeStm();db.closeConn();}}private Students student = null;public ArrayList<Students>getAllStudents() throws Exception{DBAccess db = new DBAccess();ArrayList<Students> students = new ArrayList<Students>();String sql = "SELECT * FROM students";if(db.createConn()){db.query(sql);while(db.getRs().next()){student = this.assemble(db.getRs());students.add(student);}db.closeStm();db.closeRs();db.closeConn();}return students;}public Students assemble(ResultSet rs) throws Exception{student = new Students();student.setId(rs.getInt("id"));student.setUser(rs.getString("user"));student.setPassword(rs.getString("password"));student.setDepartment(rs.getString("department"));student.setGrade(rs.getString("grade"));student.setClasses(rs.getString("classes"));student.setEmail(rs.getString("email"));student.setAmount(rs.getInt("amount"));return student;}public boolean delStudentByName(String user) throws Exception{//删除DBAccess db=new DBAccess();boolean flag = false;String sql="DELETE FROM students WHERE user = ?";if(db.createConn()){db.pre=db.getConn().prepareStatement(sql);db.pre.setString(1, user);if(db.pre.executeUpdate()>0)flag=true;}db.closeConn();db.closeStm();db.pre.close();db.closeRs();return flag;}public Students getStudentById(int id) throws Exception{DBAccess db=new DBAccess();String sql = "SELECT * FROM students WHERE id = ?";java.sql.PreparedStatement pre=null;if(db.createConn()){pre=db.getConn().prepareStatement(sql);pre.setInt(1, id);db.setRs(pre.executeQuery());//conn = OpenConnection.getConnection();//ps = conn.prepareStatement(sql_str);//ps.setInt(1,id);// rs = ps.executeQuery();if (db.getRs().next()) student = this.assemble(db.getRs());}db.closeRs();db.closeStm();pre.close();db.closeConn();//this.release();//OpenConnection.closeConnection(conn);return student;}public boolean updateStudent(Students student) throws Exception{boolean flag = false;DBAccess db=new DBAccess();String sql = "update students set amount = ? where id = ?";java.sql.PreparedStatement pre=null;if(db.createConn()){pre=db.getConn().prepareStatement(sql);//conn = OpenConnection.getConnection();// ps = conn.prepareStatement(sql_str);pre.setInt(1,student.getAmount());pre.setInt(2,student.getId());if(pre.executeUpdate() > 0) flag = true;}//this.release();//OpenConnection.closeConnection(conn);db.closeRs();pre.close();db.closeStm();db.closeConn();return flag;}public Students getStudentByName(String name) throws Exception{DBAccess db=new DBAccess();String sql = "SELECT * FROM students WHERE user = ?";java.sql.PreparedStatement pre=null;if(db.createConn()){pre=db.getConn().prepareStatement(sql);pre.setString(1, name);db.setRs(pre.executeQuery());// conn = OpenConnection.getConnection();//ps = conn.prepareStatement(sql_str);//ps.setString(1,name);// rs = ps.executeQuery();if(db.getRs().next()) student = this.assemble(db.getRs());}db.closeRs();db.closeStm();pre.close();db.closeConn();//this.release();// OpenConnection.closeConnection(conn);return student;}public ArrayList<Students> findAll(Integer page){//分页查询信息DBAccess db=new DBAccess();ArrayList<Students> list=new ArrayList<Students>();try {if(db.createConn()){String sql="select * from students limit ?,? ";db.pre=db.getConn().prepareStatement(sql);db.pre.setInt(1, (page-1)*Students.PAGE_SIZE);db.pre.setInt(2, Students.PAGE_SIZE);db.setRs(db.pre.executeQuery());while(db.getRs().next()){Students stu=new Students();stu.setUser(db.getRs().getString("user"));stu.setPassword(db.getRs().getString("password"));stu.setDepartment(db.getRs().getString("department"));stu.setGrade(db.getRs().getString("grade"));stu.setClasses(db.getRs().getString("classes"));stu.setEmail(db.getRs().getString("email"));stu.setAmount(db.getRs().getInt("amount"));list.add(stu);}db.closeRs();db.pre.close();db.closeConn();}} catch( SQLException e) {e.printStackTrace();}return list;}public int countPage(){//查询记录总数DBAccess db=new DBAccess();int count=0;try {if(db.createConn()){String sql="select count(*) from students ";db.pre=db.getConn().prepareStatement(sql);db.setRs(db.pre.executeQuery());if(db.getRs().next()){count=db.getRs().getInt(1);}}} catch( SQLException e) {e.printStackTrace();}finally {db.closeRs();try {if(db.pre!=null){db.pre.close();}} catch (Exception e2) {// TODO: handle exception}db.closeConn();}return count;}} 4.2 Servlet类userlojinServletpackage com.demo.servlet;import com.demo.dao.AdminDAO;import com.demo.dao.StudentDAO;import com.demo.javabean.*;import javax.servlet.ServletContext;import javax.servlet.ServletException;import javax.servlet.annotation.WebServlet;import javax.servlet.http.*;import java.io.IOException;import java.io.PrintWriter;import java.io.UnsupportedEncodingException;import java.sql.SQLException;public class UserLoginServlet extends HttpServlet {private static final long serialVersionUID = 1L;@Overrideprotected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {String method = (String)request.getParameter("method");if(method==null) {PrintWriter out = response.getWriter();out.println("invalid request!");} else if(method.equals("login")) {try {Login(request, response);} catch (Exception e) {// TODO 自动生成的 catch 块e.printStackTrace();}}else if(method.equals("register")) {try {Register(request, response);} catch (Exception e) {// TODO 自动生成的 catch 块e.printStackTrace();}}else if(method.equals("logout")){Logout(request,response);}}//用户登录protected void Login(HttpServletRequest request,HttpServletResponse response) throws Exception {//request.setCharacterEncoding("utf-8");//response.setCharacterEncoding("utf-8");//response.setContentType("text/html;charset=utf-8"); PrintWriter out = response.getWriter();String a_user = request.getParameter("user");String a_password = request.getParameter("password");System.out.println(a_user);String rem=request.getParameter("remember");HttpSession session = request.getSession();StudentDAO a_dao=new StudentDAO();if ("".equals(a_user) ||"".equals(a_password)) {//System.out.println("登录失败,账号或密码不能为空!");//response.sendRedirect("login.jsp");out.println("<script>" +"alert('登录失败,账号或密码不能为空!!!');" +"window.location.href = \"login.jsp\";" +"</script>");return;}else if(a_dao.isExist(a_user)){Students student=a_dao.getStudentByName(a_user);session.setAttribute("student", student);if(a_dao.valid(a_user, a_password)){session.setAttribute("a_user", a_user);user user=new user();session.setAttribute("user",user);if("1".equals(rem)){//创建2个CookieCookie namecookie=new Cookie("username", a_user);//设置Cookie的有效期为三天namecookie.setMaxAge(60*60*24*3);Cookie pwdcookie=new Cookie("password", a_password);pwdcookie.setMaxAge(60*60*24*3);response.addCookie(namecookie);response.addCookie(pwdcookie);}//response.sendRedirect(request.getContextPath()+"/user.jsp");//System.out.println("登录成功!");out.println("<script>" +"alert('登录成功!!!');" +"window.location.href = \"user.jsp\";" +"</script>");}else {//System.out.println("登录失败2,密码错误!");//response.sendRedirect(request.getContextPath()+"/login.jsp");out.println("<script>" +"alert('登录失败,密码错误!!!');" +"window.location.href = \"login.jsp\";" +"</script>");}}else {//System.out.println("登录失败3,用户名不存在!");//response.sendRedirect(request.getContextPath()+"/login.jsp");out.println("<script>" +"alert('登录失败,用户名不存在!!!');" +"window.location.href = \"login.jsp\";" +"</script>");}}//用户退出protected void Logout(HttpServletRequest request,HttpServletResponse response) throws ServletException, IOException {HttpSession session = request.getSession();session.removeAttribute("a_user");session.removeAttribute("user");response.sendRedirect("login.jsp");}//用户注册protected void Register(HttpServletRequest request, HttpServletResponse response) throws IOException,ServletException{//request.setCharacterEncoding("utf-8");//response.setCharacterEncoding("utf-8");//response.setContentType("text/html;charset=utf-8"); PrintWriter out = response.getWriter();String user = request.getParameter("user");String password = request.getParameter("password");String repwd= request.getParameter("repwd");String department = request.getParameter("department");String grade = request.getParameter("grade");String classes = request.getParameter("classes");String email = request.getParameter("email");if ("".equals(user) ||"".equals(password) || "".equals(repwd) || !password.equals(repwd)||"".equals(department)||"".equals(grade)||"".equals(classes)||"".equals(email)) {//response.sendRedirect("reg.jsp");out.println("<script>" +"alert('注册失败,信息不全!!!');" +"window.location.href = \"reg.jsp\";" +"</script>");return;}else{Students student = null;StudentDAO a_dao = new StudentDAO();boolean isExist =a_dao.isExist(user);if(isExist){//System.out.println("'此学号已注册过,请重试!");//response.sendRedirect("reg.jsp");out.println("<script>" +"alert('此学号已注册过,请重试!!!');" +"window.location.href = \"reg.jsp\";" +"</script>");}else{student = new Students();student.setUser(user);student.setPassword(password);student.setDepartment(department);student.setGrade(grade);student.setClasses(classes);student.setEmail(email);student.setAmount(0);try {if(a_dao.add(student)){student = a_dao.getStudentByName(student.getUser());request.getSession().setAttribute("student",student);//System.out.println("注册成功,即将跳转到主界面!");//response.sendRedirect("login.jsp");out.println("<script>" +"alert('注册成功,即将跳转到主界面!!!');" +"window.location.href = \"login.jsp\";" +"</script>");return;}} catch (Exception e) {// TODO 自动生成的 catch 块e.printStackTrace();}}}}@Overrideprotected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {//req.setCharacterEncoding("utf-8");this.doGet(req, resp);}}adminlojinServletpackage com.demo.servlet;import java.io.*;import javax.servlet.ServletException;import javax.servlet.annotation.WebServlet;import javax.servlet.http.HttpServlet;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;import javax.servlet.http.HttpSession;import com.demo. dao.AdminDAO;import com.demo.javabean.*;public class AdminLoginServlet extends HttpServlet {private static final long serialVersionUID = 1L; @Override protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { String method = (String)req.getParameter("method"); if(method==null) {PrintWriter out = resp.getWriter();out.println("invalid request!");} else if(method.equals("login")) {Login(req, resp);} } //管理员登录 protected void Login(HttpServletRequest request,HttpServletResponse response) throws ServletException, IOException { //request.setCharacterEncoding("utf-8"); //response.setCharacterEncoding("utf-8");//response.setContentType("text/html;charset=utf-8"); PrintWriter out = response.getWriter(); String a_user =request.getParameter("a_user"); String a_password = request.getParameter("a_password"); //HttpSession session = request.getSession(); AdminDAO a_dao = new AdminDAO(); //String admin = null; if ( a_user .equals("") ||a_password .equals("")) { //System.out.println("登录失败");//response.sendRedirect("login.jsp");//重定向 out.println("<script>" +"alert('登录失败,用户名或密码不能为空!!!');" +"window.location.href = \"login.jsp\";" +"</script>");return;} boolean isValid = a_dao.valid(a_user, a_password);if (isValid) {HttpSession session = request.getSession();session.setAttribute("a_user", a_user);out.println("<script>" +"alert('登录成功!!!');" +"window.location.href = \"admin.jsp\";" +"</script>");//response.sendRedirect("admin.jsp");//重定向return;}else {//System.out.println("登录失败");//response.sendRedirect("login.jsp");//重定向out.println("<script>" +"alert('登录失败,密码不正确!!!');" +"window.location.href = \"login.jsp\";" +"</script>");return;}}// protected void Logout(HttpServletRequest request,//HttpServletResponse response) throws ServletException, IOException {//HttpSession session = request.getSession();//session.removeAttribute("a_user");//response.sendRedirect("login.jsp");//}// @Override protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { doGet(req,resp); }}managebookservletpackage com.demo.servlet;import com.demo.dao.BookDAO;import com.demo.javabean.*;import javax.security.auth.message.callback.PrivateKeyCallback.Request;import javax.servlet.ServletException;import javax.servlet.annotation.WebServlet;import javax.servlet.http.HttpServlet;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;import javax.servlet.http.HttpSession;import java.io.IOException;import java.io.PrintWriter;import java.io.UnsupportedEncodingException;public class ManageBookServlet extends HttpServlet {@Overrideprotected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {//HttpSession session=request.getSession();//if(session!=null&&session.getAttribute("a_user1")!=null){//String action = (String)request.getParameter("action");//if(action==null) {//PrintWriter out = response.getWriter();//out.println("invalid request!");//} else if(action.equals("addbook")) {//AddBook(request, response);//}//else if(action.equals("delbook")) {//DelBook(request, response);//}//else if(action.equals("updatebook")) {//UpdateBook(request, response);//}//else if(action.equals("update")) {//Update(request, response);//}//}//else {//response.sendRedirect("login.jsp");//}String action = (String)request.getParameter("action");if(action==null) {PrintWriter out = response.getWriter();out.println("invalid request!");} else if(action.equals("addbook")) {AddBook(request, response);}else if(action.equals("delbook")) {DelBook(request, response);}else if(action.equals("updatebook")) {UpdateBook(request, response);}else if(action.equals("update")) {Update(request, response);}}//更新图书private void Update(HttpServletRequest req, HttpServletResponse resp) throws ServletException,IOException{// TODO 自动生成的方法存根//req.setCharacterEncoding("utf-8");//resp.setCharacterEncoding("utf-8");//resp.setContentType("text/html;charset=utf-8");Integer sid = Integer.parseInt(req.getParameter("sid"));BookDAO b_dao=new BookDAO();String page="";try {Books book=b_dao.getBookById(sid);req.setAttribute("book", book);req.getRequestDispatcher("admin/update_book.jsp").forward(req, resp);} catch (Exception e) {//page="error.jsp";//TODO 自动生成的 catch 块e.printStackTrace();}// finally{// page="admin/update_book.jsp";// }// req.getRequestDispatcher(page).forward(req, resp);}private void UpdateBook(HttpServletRequest req, HttpServletResponse resp)throws ServletException,IOException {//修改图书信息// TODO 自动生成的方法存根//req.setCharacterEncoding("utf-8");//resp.setCharacterEncoding("utf-8");//resp.setContentType("text/html;charset=utf-8");PrintWriter out=resp.getWriter();String sid=req.getParameter("sid");String name=req.getParameter("name");String author=req.getParameter("author");String amount = req.getParameter("amount");String category = req.getParameter("category");BookDAO b_dao=new BookDAO();Books book=new Books();if(name != "" && author != "" && amount != "" && category != ""){book.setName(name);book.setAuthor(author);book.setAmount(Integer.parseInt(amount));book.setCategory(category);book.setId(Integer.parseInt(sid));try {if(b_dao.updateBook2(book)){//System.out.println("修改书籍成功!");//resp.sendRedirect("PageServlet.do?method=showBook");out.println("<script>alert('修改书籍成功!');" +"window.location.href = \"PageServlet.do?method=showBook\";" +"</script>");return;}else//System.out.println("修改书籍失败!内容不能为空");out.println("<script>alert('修改书籍失败!内容不能为空');" +"window.location.href = \"PageServlet.do?method=showBook\";" +"</script>");} catch (Exception e) {// TODO 自动生成的 catch 块e.printStackTrace();}}else//System.out.println("修改书籍失败!");//resp.sendRedirect("");out.println("<script>alert('修改书籍失败!');" +"window.location.href = \"PageServlet.do?method=showBook\";" +"</script>");}//删除图书private void DelBook(HttpServletRequest request, HttpServletResponse response) throws ServletException,IOException {// TODO 自动生成的方法存根//request.setCharacterEncoding("utf-8");//response.setCharacterEncoding("utf-8");//response.setContentType("text/html;charset=utf-8");PrintWriter out=response.getWriter();String name=request.getParameter("name");BookDAO b_dao = new BookDAO();if(name!=null){try {if(b_dao.delbook(name)){//System.out.println("删除书籍成功!");//response.sendRedirect("PageServlet.do?method=showBook");//return;out.println("<script>alert('删除书籍成功!');" +"window.location.href = \"PageServlet.do?method=showBook\";" +"</script>");return;}else //System.out.println("删除书籍失败!");//response.sendRedirect("admin/del_book.jsp");out.println("<script>alert('删除书籍失败!');" +"window.location.href = \"admin/del_book.jsp\";" +"</script>");} catch (Exception e) {// TODO 自动生成的 catch 块e.printStackTrace();}}else{//System.out.println("删除图书失败!无此图书");//response.sendRedirect("admin/del_book.jsp");out.println("<script>alert('删除书籍失败!');" +"window.location.href = \"admin/del_book.jsp\";" +"</script>");}}//添加图书private void AddBook(HttpServletRequest req, HttpServletResponse resp)throws ServletException,IOException {// TODO 自动生成的方法存根//req.setCharacterEncoding("utf-8");//resp.setCharacterEncoding("utf-8");//resp.setContentType("text/html;charset=utf-8");PrintWriter out=resp.getWriter();String name = req.getParameter("name");String author = req.getParameter("author");String amount = req.getParameter("amount");String category = req.getParameter("category");String intro="暂未介绍";BookDAO b_dao = new BookDAO();Books book = null;if(name != "" && author != "" && amount != "" && category != ""){book = new Books();book.setName(name);book.setAuthor(author);book.setIntro("暂未介绍");book.setAmount(Integer.parseInt(amount));book.setCategory(category);//PrintWriter out = resp.getWriter();try {b_dao.addBook(name, author, intro, amount, category);//System.out.println("添加书籍成功!");//resp.sendRedirect("admin/reg_book.jsp");out.println("<script>alert('添加书籍成功!');" +"window.location.href = \"admin/reg_book.jsp\";" +"</script>");} catch (Exception e) {// TODO 自动生成的 catch 块e.printStackTrace();}}else{//System.out.println("添加书籍失败!其他原因");//resp.sendRedirect("admin/reg_book.jsp");out.println("<script>alert('添加书籍失败!!其他原因');" +"window.location.href = \"admin/reg_book.jsp\";" +"</script>");}}@Overrideprotected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {//req.setCharacterEncoding("utf-8");doGet(req,resp);}}managestudentservletpackage com.demo.servlet;import com.demo.dao.StudentDAO;import com.demo.javabean.*;import javax.servlet.ServletContext;import javax.servlet.ServletException;import javax.servlet.annotation.WebServlet;import javax.servlet.http.HttpServlet;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;import javax.servlet.http.HttpSession;import java.io.IOException;import java.io.PrintWriter;public class ManageStudentServlet extends HttpServlet {private static final long serialVersionUID = 1L; @Override protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {// HttpSession session=request.getSession();// if(session!=null&&session.getAttribute("a_user1")!=null){// String action = (String)request.getParameter("action");// if(action==null) {//PrintWriter out = response.getWriter();//out.println("invalid request!");//} else if(action.equals("addstudent")) {//AddStudent(request, response);//}//else if(action.equals("delstudent")) {//DelStudent(request, response);//}//else if(action.equals("showstudent")){//ShowStudent(request,response);//}// }// else {//response.sendRedirect("login.jsp");//} String action = (String)request.getParameter("action"); if(action==null) {PrintWriter out = response.getWriter();out.println("invalid request!");} else if(action.equals("addstudent")) {AddStudent(request, response);}else if(action.equals("delstudent")) {DelStudent(request, response);}else if(action.equals("showstudent")){ShowStudent(request,response);} } private void ShowStudent(HttpServletRequest request, HttpServletResponse response) throws ServletException,IOException{// TODO 自动生成的方法存根//request.setCharacterEncoding("utf-8");String user=request.getParameter("user");StudentDAO studao=new StudentDAO();Students student=new Students();try {student=studao.getStudentByName(user);request.setAttribute("student", student);} catch (Exception e) {// TODO 自动生成的 catch 块e.printStackTrace();}request.getRequestDispatcher("admin/show_student.jsp").forward(request, response);}private void DelStudent(HttpServletRequest req, HttpServletResponse resp)throws ServletException,IOException { req.setCharacterEncoding("utf-8"); resp.setCharacterEncoding("utf-8"); resp.setContentType("text/html;charset=utf-8"); PrintWriter out=resp.getWriter(); String user=req.getParameter("user"); StudentDAO s_dao = new StudentDAO(); if(user!=null){ System.out.println(user); try {if(s_dao.delStudentByName(user)){// System.out.println("删除成功!"); //resp.sendRedirect("PageServlet.do?method=showStudent");out.println("<script>alert('删除成功!');" +"window.location.href=\"PageServlet.do?method=showStudent\";"+"</script>"); return;}else//System.out.println("删除失败!");//resp.sendRedirect("admin/del_student.jsp");out.println("<script>alert('删除失败!');" +"window.location.href=\"admin/del_student.jsp\";"+"</script>");} catch (Exception e) {// TODO 自动生成的 catch 块e.printStackTrace();} } else{ //System.out.println("删除失败,无此账号!"); //resp.sendRedirect("admin/del_student.jsp"); out.println("<script>alert('删除失败,无此账号!');" +"window.location.href=\"admin/del_student.jsp\";"+"</script>"); } }// TODO 自动生成的方法存根private void AddStudent(HttpServletRequest req, HttpServletResponse resp) throws ServletException,IOException {// TODO 自动生成的方法存根//req.setCharacterEncoding("utf-8");//resp.setCharacterEncoding("utf-8");//resp.setContentType("text/html;charset=utf-8");PrintWriter out=resp.getWriter(); String user=req.getParameter("user"); String password = req.getParameter("password"); String relpwd=req.getParameter("relpwd"); String department=req.getParameter("department"); String grade = req.getParameter("grade"); String classes=req.getParameter("classes"); String email = req.getParameter("email"); String admin=req.getParameter("admin"); if ("".equals(user) || "".equals(password) ||"".equals(relpwd) || !password.equals(relpwd)||"".equals(department)||"".equals(grade)||"".equals(classes)||"".equals(email)) {//resp.sendRedirect("admin/add_student.jsp");//System.out.println("信息不全"); out.println("<script>alert('添加失败,信息不全!');" +"window.location.href = \"admin/add_student.jsp\";" +"</script>");return;}else{ StudentDAO a_dao = new StudentDAO(); Students student=new Students();boolean isExist =a_dao.isExist(user);if(isExist){//System.out.println("此学号已注册!");//resp.sendRedirect("admin/add_student.jsp");out.println("<script>alert('此学号已注册!');" +"window.location.href = \"admin/add_student.jsp\";" +"</script>");}else{ student = new Students(); student.setUser(user); student.setPassword(password); student.setDepartment(department); student.setGrade(grade); student.setClasses(classes);; student.setEmail(email); student.setAmount(0); try {if(a_dao.add(student)){student = a_dao.getStudentByName(student.getUser()); req.getSession().setAttribute("student",student);//System.out.println("添加成功!");//resp.sendRedirect(""); out.println("<script>alert('添加成功!');" +"window.location.href = \"admin/add_student.jsp\";" +"</script>");return;}} catch (Exception e) {// TODO 自动生成的 catch 块e.printStackTrace();}}}} @Override protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { //req.setCharacterEncoding("utf-8"); doGet(req,resp); }}javaBean类adminpackage com.demo.javabean;public class Admins { private int id; //定义管理员的id序号 private String admin; //登录账号 private String password; //密码 private String realname; //真实姓名 private String phone; //电话号码 private String email; //邮箱 private String address; //地址 //获取管理员的id序号 public int getId() { return id; } //设置管理员的id序号 public void setId(int id) { this.id = id; } //获取管理员的账号 public String getAdmin() { return admin; } //设置管理员的账号 public void setAdmin(String admin) { this.admin = admin; } //获取管理员的密码 public String getPassword() { return password; } //设置管理员的密码 public void setPassword(String password) { this.password = password; } //获取管理员的真实姓名 public String getRealname() { return realname; } //设置管理员的真实姓名 public void setRealname(String realname) { this.realname = realname; } //获取管理员的电话 public String getPhone() { return phone; } //设置管理员的电话号码 public void setPhone(String phone) { this.phone = phone; } //获得管理员的邮箱地址 public String getEmail() { return email; } //设置管理员的邮箱地址 public void setEmail(String email) { this.email = email; } //获取管理员的地址 public String getAddress() { return address; } //设置管理员的地址 public void setAddress(String address) { this.address = address; }}studentpackage com.demo.javabean;public class Students {public static final int PAGE_SIZE=5; private int id; private String user; private String password; private String department; private String grade; private String classes; private String email; private int amount; public int getId() { return id; } public void setId(int id) { this.id = id; } public String getUser() { return user; } public void setUser(String user) { this.user = user; } public String getPassword() { return password; } public void setPassword(String password) { this.password = password; } public String getDepartment() { return department; } public void setDepartment(String department) { this.department = department; } public String getGrade() { return grade; } public void setGrade(String grade) { this.grade = grade; } public String getClasses() { return classes; } public void setClasses(String classes) { this.classes = classes; } public String getEmail() { return email; } public void setEmail(String email) { this.email = email; } public int getAmount() { return amount; } public void setAmount(int amount) { this.amount = amount; }}bookpackage com.demo.javabean;public class Books {private static final long serialVersionUID = 1L;public static final int PAGE_SIZE=5; private int id; private String name; private String author; private String intro; private int amount; private String category; //取得图书的id序号 public int getId() { return id; } //设置图书的id序号 public void setId(int id) { this.id = id; } //获取图书的名字 public String getName() { return name; } //设置图书的名字 public void setName(String name) { this.name = name; } //获取图书的作者 public String getAuthor() { return author; } //设置图书的作者 public void setAuthor(String author) { this.author = author; } //获取图书的简介 public String getIntro() { return intro; } //设置图书的简介 public void setIntro(String intro) { this.intro = intro; } //获取图书的数量 public int getAmount() { return amount; } //设置图书的数量 public void setAmount(int amount) { this.amount = amount; } //获取图书的类别 public String getCategory() { return category; } //设置图书的类别 public void setCategory(String category) { this.category = category; }}filter(过滤器类)loginfilterpackage com.demo.filter;import java.io.IOException;import javax.servlet.Filter;import javax.servlet.FilterChain;import javax.servlet.FilterConfig;import javax.servlet.ServletException;import javax.servlet.ServletRequest;import javax.servlet.ServletResponse;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;import javax.servlet.http.HttpSession;public class LoginFilter implements Filter {//对登录进行验证过滤@Overridepublic void destroy() {// TODO 自动生成的方法存根}@Overridepublic void doFilter(ServletRequest req, ServletResponse resp, FilterChain chain)throws IOException, ServletException {// TODO 自动生成的方法存根HttpServletRequest request=(HttpServletRequest) req;HttpServletResponse response=(HttpServletResponse)resp;HttpSession session=request.getSession(false);if(session!=null&&session.getAttribute("a_user")!=null){//继续往下走chain.doFilter(request, response);}else {response.sendRedirect("login.jsp");}}@Overridepublic void init(FilterConfig arg0) throws ServletException {// TODO 自动生成的方法存根}}characterfilterpackage com.demo.filter;import java.io.IOException;import javax.servlet.Filter;import javax.servlet.FilterChain;import javax.servlet.FilterConfig;import javax.servlet.ServletException;import javax.servlet.ServletRequest;import javax.servlet.ServletResponse;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;public class CharacterFilter implements Filter {//对字符乱码问题进行过滤@Overridepublic void destroy() {// TODO 自动生成的方法存根}@Overridepublic void doFilter(ServletRequest req, ServletResponse resp, FilterChain chain)throws IOException, ServletException {// TODO 自动生成的方法存根HttpServletRequest request=(HttpServletRequest)req;HttpServletResponse response=(HttpServletResponse) resp;request.setCharacterEncoding("utf-8");response.setCharacterEncoding("utf-8");response.setContentType("text/html;charset=utf-8");//继续执行chain.doFilter(request, response);}@Overridepublic void init(FilterConfig arg0) throws ServletException {// TODO 自动生成的方法存根}}

。。。因代码量较多,就不一一粘贴,有兴趣的友友可以交流。

本文链接地址:https://www.jiuchutong.com/zhishi/297599.html 转载请保留说明!

上一篇:vue3使用element-plus(vue3+elementplus)

下一篇:uni-app ——使用uploadFile上传多张图片

  • 苹果12用高通基带吗(苹果12高通基带数据)

    苹果12用高通基带吗(苹果12高通基带数据)

  • 微软平板键盘没反应(微软平板键盘没有反应)

    微软平板键盘没反应(微软平板键盘没有反应)

  • 如何取消默认微信登录(如何取消默认微信分享)

    如何取消默认微信登录(如何取消默认微信分享)

  • 微信被拉黑后还能看到对方朋友圈吗(微信被拉黑后还能搜索到对方账号吗)

    微信被拉黑后还能看到对方朋友圈吗(微信被拉黑后还能搜索到对方账号吗)

  • 索引图什么意思(索引示意图)

    索引图什么意思(索引示意图)

  • 小米10为啥不支持50倍(小米为啥不支持贵州通交通云卡)

    小米10为啥不支持50倍(小米为啥不支持贵州通交通云卡)

  • 小米手环3和4充电器通用吗(小米手环3和4充电器一样吗)

    小米手环3和4充电器通用吗(小米手环3和4充电器一样吗)

  • 怎样下载qq号到手机上(怎样下载qq号到手机上?)

    怎样下载qq号到手机上(怎样下载qq号到手机上?)

  • 电脑电源怎么测试好的坏的(电脑电源怎么测试好坏插哪两个孔)

    电脑电源怎么测试好的坏的(电脑电源怎么测试好坏插哪两个孔)

  • 属于高级程序设计语言的是(以下属于高级程序语言的是)

    属于高级程序设计语言的是(以下属于高级程序语言的是)

  • 手机显示1x是什么意思(手机显示1x是什么意思怎么解决)

    手机显示1x是什么意思(手机显示1x是什么意思怎么解决)

  • B站会员怎么申请退款(b站注册会员怎么成为正式会员)

    B站会员怎么申请退款(b站注册会员怎么成为正式会员)

  • wps如何删除空白部分(wps如何删除空白表格)

    wps如何删除空白部分(wps如何删除空白表格)

  • 华为手机怎么弄小窗口(华为手机怎么弄微信分身)

    华为手机怎么弄小窗口(华为手机怎么弄微信分身)

  • realme x2采用什么散热技术(realme x2怎么样)

    realme x2采用什么散热技术(realme x2怎么样)

  • 快手怎么举报正在直播(快手上如何举报人)

    快手怎么举报正在直播(快手上如何举报人)

  • word文档怎么改动不了(word文档怎么改字体)

    word文档怎么改动不了(word文档怎么改字体)

  • 华为锁屏虚化能不能关(手机锁屏虚化怎么办)

    华为锁屏虚化能不能关(手机锁屏虚化怎么办)

  • 华为20i什么时候上市(华为20s什么时候发布)

    华为20i什么时候上市(华为20s什么时候发布)

  • u盘文件无法复制到电脑(u盘文件无法复制粘贴)

    u盘文件无法复制到电脑(u盘文件无法复制粘贴)

  • x27电池容量多大(x27电池多大毫安)

    x27电池容量多大(x27电池多大毫安)

  • mate30pro德国发布会时间(华为mate30pro发布)

    mate30pro德国发布会时间(华为mate30pro发布)

  • 趣步糖果怎么用(趣步糖果怎么用教程)

    趣步糖果怎么用(趣步糖果怎么用教程)

  • 苹果剪切板在哪里(苹果剪贴板怎么弄出来)

    苹果剪切板在哪里(苹果剪贴板怎么弄出来)

  • 快手我的小店怎么添加商品(快手我的小店怎么找不到了)

    快手我的小店怎么添加商品(快手我的小店怎么找不到了)

  • DCSHelper.exe是什么进程 DCSHelper.exe程序进程介绍(dcs是什么文件夹可以删除吗)

    DCSHelper.exe是什么进程 DCSHelper.exe程序进程介绍(dcs是什么文件夹可以删除吗)

  • 目标检测算法——YOLOv5/v7/v8改进结合即插即用的动态卷积ODConv(小目标涨点神器)(运动目标检测算法)

    目标检测算法——YOLOv5/v7/v8改进结合即插即用的动态卷积ODConv(小目标涨点神器)(运动目标检测算法)

  • Using Visual Leak Detector

    Using Visual Leak Detector

  • 出口应退税额如何计算
  • 个体工商户个人经营所得税优惠政策
  • 主营业务收入净额在利润表里怎么看
  • 无票收入在增值税申报表的哪里填
  • 经营活动现金流量公式
  • 每个季度申报怎么申报?
  • 长期股权投资是金融资产还是非金融资产
  • 车间加班视频
  • 国际货运代理免税报表填写
  • 销售发票红冲会计分录怎么做?
  • 房屋租赁合同印花税计税依据
  • 计提福利是什么
  • 服务业发票丢失怎么处理
  • 哪些进项税额不允许从销项税额中抵扣?
  • 房地产增值税预征率
  • 2020年小规模生活服务业优惠政策
  • 个体工商户2020
  • 应付和预付账款的区别
  • 个人所得税任职受雇信息有影响吗
  • 固定资产加速折旧最新政策2023
  • 如何计算工程预付款
  • 基金的业绩是什么
  • 补充养老保险费可以扣除吗
  • 有形动产租赁服务和不动产租赁服务的区别
  • 季度所得税可以不预缴吗
  • 现在还有餐饮许可证吗
  • 公司全额承担个税会计分录
  • 该设备正在使用中怎么关闭u盘
  • 默认网关不可用修复后过一会又不好使了
  • win10如何设置一键还原系统
  • 赠品怎么做账务分录
  • 静态回收期怎么计算
  • 期间费用在会计期末要转入
  • 原材料赔偿会计分录
  • msg0.db是什么文件
  • 贷款减值损失准备怎么算
  • 企业所得税扣除限额标准
  • linux系统操作教程
  • c语言二级指针详解
  • 业务招待费调增额怎么算
  • 未取得增值税发票开具二手车发票
  • 专票不认证有什么风险
  • wordpress账号密码忘记了
  • python 动态
  • 现金流量表年报期末现金余额
  • 绩效工资交个人所得税吗
  • sql server索引怎么用
  • 发票验旧后还要缴销吗
  • 残保金是计入管理费用还是?
  • 政府会计资产处置费用科目
  • 简易计税是否要计增值税
  • 可转债中签后怎么看涨跌
  • 企业如何进行促销
  • 固定资产赠送后怎么做凭证
  • 国外差旅费如何确定汇率呢
  • 销售返利可以计入销售费用吗
  • 所得税费用要结转本年利润吗
  • 库存现金存入银行是什么凭证
  • 股东在注册资本金范围内承担责任
  • 劳务派遣差额扣除项目包含个人缴纳的社保费吗
  • 新成立公司实收资本没到位该怎么做账
  • 多交增值税不能抵扣
  • 账面余额与账面净值
  • 怎样让windows media player播放mkv文件
  • ubuntu怎么安装包
  • Kali(debian) Too many open files 错误处理办法
  • 如何查看电脑端口号
  • kali渗透工具安装
  • linux系统命令包含在哪个目录中
  • win8怎么进去安全系统
  • win7系统英雄联盟黑屏
  • 备份引导分区
  • python的nltk
  • python编码大全
  • 发票查询结果打印怎么弄
  • 车辆购置税已缴款未入库可以上牌吗
  • 深圳税务服务大厅电话
  • 2019税务系统升级
  • 代理记账费用可以全额抵扣吗
  • 国税系统如何变更财务负责人
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设