根据测试要求完成了石家庄铁道大学的选课系统实现javaweb增删改查。

要求如下:

 

 

 

 Bean包:

course.java:

 1 package Bean;
 2 
 3 public class course {
 4     public String id;
 5     public  String stunum;
 6     public  String name;
 7     public String s;
 8     public String getS() {
 9         return s;
10     }
11     public void setS(String s) {
12         this.s = s;
13     }
14     public String getId() {
15         return id;
16     }
17     public void setId(String id) {
18         this.id = id;
19     }
20     public String getStunum() {
21         return stunum;
22     }
23     public void setStunum(String stunum) {
24         this.stunum = stunum;
25     }
26     public String getName() {
27         return name;
28     }
29     public void setName(String name) {
30         this.name = name;
31     }
32 
33     
34 }

information.java:

 1 package Bean;
 2 
 3 public class information {
 4     public static String id;
 5     public static String code;
 6     public static String shenfen;
 7     public static String getId() {
 8         return id;
 9     }
10     public static void setId(String id) {
11         information.id = id;
12     }
13     public static String getCode() {
14         return code;
15     }
16     public static void setCode(String code) {
17         information.code = code;
18     }
19     public static String getShenfen() {
20         return shenfen;
21     }
22     public static void setShenfen(String shenfen) {
23         information.shenfen = shenfen;
24     }
25     
26 }

teainformation.java:

 1 package Bean;
 2 
 3 public class teainformation {
 4     public  String teaid;
 5     public String teaname;
 6     public  String sex;
 7     public  String xueyuan;
 8     public String zhicheng;
 9     public String getTeaid() {
10         return teaid;
11     }
12     public void setTeaid(String teaid) {
13         this.teaid = teaid;
14     }
15     public String getTeaname() {
16         return teaname;
17     }
18     public void setTeaname(String teaname) {
19         this.teaname = teaname;
20     }
21     public String getSex() {
22         return sex;
23     }
24     public void setSex(String sex) {
25         this.sex = sex;
26     }
27     public String getXueyuan() {
28         return xueyuan;
29     }
30     public void setXueyuan(String xueyuan) {
31         this.xueyuan = xueyuan;
32     }
33     public String getZhicheng() {
34         return zhicheng;
35     }
36     public void setZhicheng(String zhicheng) {
37         this.zhicheng = zhicheng;
38     }
39     
40 }

xuanke.java:

package Bean;

public class xuanke {
    public String id;
    public String stuid;
    public String teaid;
    public String name;
    public String getId() {
        return id;
    }
    public void setId(String id) {
        this.id = id;
    }
    public String getStuid() {
        return stuid;
    }
    public void setStuid(String stuid) {
        this.stuid = stuid;
    }
    public String getTeaid() {
        return teaid;
    }
    public void setTeaid(String teaid) {
        this.teaid = teaid;
    }
    public String getName() {
        return name;
    }
    public void setName(String name) {
        this.name = name;
    }
    
}

servlet层:

kechengp.java:   添加课程的判定与添加

package Servlet;

import java.io.IOException;
import java.sql.ResultSet;
import java.sql.SQLException;

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 utils.utilskecheng;

@WebServlet("/kechengp")
public class kechengp extends HttpServlet{
    private static final long serialVersionUID = 1L;
    public kechengp()
    {
        super();
    }
    protected void doGet(HttpServletRequest request,HttpServletResponse response)throws ServletException,IOException
    {
        request.setCharacterEncoding("utf-8");
        response.setContentType("text/html;charset=utf-8");
        utilskecheng to=new utilskecheng();
        String id=request.getParameter("id");
        String name=request.getParameter("name");
        String stunum=request.getParameter("stunum");
        String s=(String)request.getSession().getAttribute("idnum");
        String sql="select * from kecheng where id =?";
        Object[] objs1={id};
        ResultSet rs=to.query(sql, objs1);
             try {
                    if(rs.next()) {
                          System.out.println("课程已存在");
                          response.getWriter().append("课程已存在");
                          response.sendRedirect("projectplus.jsp");
                      }
                    else {
                        String sql2="insert into kecheng(id,name,stunum,s)values(?,?,?,?)";
                        Object[] objs2={id,name,stunum,s};
                             int a=to.update(sql2,objs2);
                             if(a>0){
                                 request.setAttribute("info","注册成功!!!");
                                 request.setAttribute("link","teacher.jsp");
                                 request.getRequestDispatcher("alert.jsp").forward(request, response);
                             }else{
                                 request.setAttribute("info","注册失败!!!");
                                 request.setAttribute("link","projectplus.jsp");
                                 request.getRequestDispatcher("alert.jsp").forward(request,response);
                    
                    }
                    }
        }catch(SQLException e)
        {
            e.printStackTrace();
        }
    }
    protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        // TODO Auto-generated method stub
        doGet(request, response);
    }
}

lojin.java:   menu.jsp登陆的servlet 根据所选的身份不同跳转到不同的操作界面(先验证用户账号密码是否正确)

package Servlet;

import java.io.IOException;
import java.sql.ResultSet;
import java.sql.SQLException;

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 utils.utils;

@WebServlet("/lojin")
public class lojin extends HttpServlet{
    private static final long serialVersionUID = 1L;
    public lojin()
    {
        super();
    }
    protected void doGet(HttpServletRequest request,HttpServletResponse response)throws ServletException,IOException
    {
        HttpSession session=request.getSession();
        request.setCharacterEncoding("utf-8");
        response.setContentType("text/html;charset=utf-8");
        String id=request.getParameter("id");
        String code=request.getParameter("code");
        String shenfen=request.getParameter("shenfen");
        String sql="select * from register where id =? and code=? and shenfen=?";
        Object[] objs1={id,code,shenfen};
        utils to=new utils();
        ResultSet rs=to.query(sql, objs1);
         try {
                if(rs.next()) {
                    request.getSession().setAttribute("idnum", id);
                    if(shenfen.equals("教师"))
                    {
                         request.setAttribute("info","登录成功!!!");
                         request.setAttribute("link","teacher.jsp");
                         request.getRequestDispatcher("alert.jsp").forward(request, response);
                    }
                    else if(shenfen.equals("管理员"))
                    {
                        request.setAttribute("info","登录成功!!!");
                         request.setAttribute("link","manager.jsp");
                         request.getRequestDispatcher("alert.jsp").forward(request, response);
                    }
                    else//学生
                    {
                        request.setAttribute("info","登录成功!!!");
                         request.setAttribute("link","student.jsp");
                         request.getRequestDispatcher("alert.jsp").forward(request, response);
                    }
                    }
                else {
                    System.out.println("用户不存在或密码错误");
                }
         }catch(SQLException e)
            {
                e.printStackTrace();
            }
        }
        protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
            // TODO Auto-generated method stub
            doGet(request, response);
        }
}

managerstu.java:      这是管理员给学生添加信息的servlet

package Servlet;

import java.io.IOException;
import java.sql.ResultSet;
import java.sql.SQLException;

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 utils.utilss;

@WebServlet("/managerpstu")
public class managerpstu extends HttpServlet{
    private static final long serialVersionUID = 1L;
    public managerpstu()
    {
        super();
    }
    protected void doGet(HttpServletRequest request,HttpServletResponse response)throws ServletException,IOException
    {
        
        request.setCharacterEncoding("utf-8");
        response.setContentType("text/html;charset=utf-8");
        utilss to=new utilss();
        String stuid=request.getParameter("stuid");
        String name=request.getParameter("name");
        String sex=request.getParameter("sex");
        String banji=request.getParameter("banji");
        String zhuanye=request.getParameter("zhuanye");
        String s=(String)request.getSession().getAttribute("idnum");
        String sql="select * from student where stuid =?";
        Object[] objs1={s};
        ResultSet rs=to.query(sql, objs1);
             try {
                    if(rs.next()) {
                          System.out.println("已经有该用户");
                          response.getWriter().append("已经有该用户");
                          response.sendRedirect("managerpstu.jsp");
                      }
                    else {
                        String sql2="insert into student(stuid,name,sex,banji,zhuanye)values(?,?,?,?,?)";
                        Object[] objs2={s,name,sex,banji,zhuanye};
                             int a=to.update(sql2,objs2);
                             if(a>0){
                                 request.setAttribute("info","注册成功!!!");
                                 request.setAttribute("link","manager.jsp");
                                 request.getRequestDispatcher("alert.jsp").forward(request, response);
                             }else{
                                 request.setAttribute("info","注册失败!!!");
                                 request.setAttribute("link","managerpstu.jsp");
                                 request.getRequestDispatcher("alert.jsp").forward(request,response);
                    
                    }
                    }
        }catch(SQLException e)
        {
            e.printStackTrace();
        }
    }
    protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        // TODO Auto-generated method stub
        doGet(request, response);
    }
}

managertea.java:   管理员给老师添加信息的servlet

package Servlet;

import java.io.IOException;
import java.sql.ResultSet;
import java.sql.SQLException;

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 utils.utilst;

@WebServlet("/managerptea")
public class managerptea extends HttpServlet{
    private static final long serialVersionUID = 1L;
    public managerptea()
    {
        super();
    }
    protected void doGet(HttpServletRequest request,HttpServletResponse response)throws ServletException,IOException
    {
        request.setCharacterEncoding("utf-8");
        response.setContentType("text/html;charset=utf-8");
        utilst to=new utilst();
        String teaid=request.getParameter("teaid");
        String teaname=request.getParameter("teaname");
        String sex=request.getParameter("sex");
        String xueyuan=request.getParameter("xueyuan");
        String zhicheng=request.getParameter("zhicheng");
        String sql="select * from teacher where teaid =?";
        Object[] objs1={teaid};
        ResultSet rs=to.query(sql, objs1);
             try {
                    if(rs.next()) {
                          System.out.println("已经有该用户");
                          response.getWriter().append("已经有该用户");
                          response.sendRedirect("register.jsp");
                      }
                    else {
                        String sql2="insert into teacher(teaid,teaname,sex,xueyuan,zhicheng)values(?,?,?,?,?)";
                        Object[] objs2={teaid,teaname,sex,xueyuan,zhicheng};
                             int a=to.update(sql2,objs2);
                             if(a>0){
                                 request.setAttribute("info","注册成功!!!");
                                 request.setAttribute("link","manager.jsp");
                                 request.getRequestDispatcher("alert.jsp").forward(request, response);
                             }else{
                                 request.setAttribute("info","注册失败!!!");
                                 request.setAttribute("link","managerptea.jsp");
                                 request.getRequestDispatcher("alert.jsp").forward(request,response);
                    
                    }
                    }
        }catch(SQLException e)
        {
            e.printStackTrace();
        }
    }
    protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        // TODO Auto-generated method stub
        doGet(request, response);
    }
    
}

register.java:     注册的servlet

package Servlet;

import java.io.IOException;
import java.sql.ResultSet;
import java.sql.SQLException;

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 utils.utils;

@WebServlet("/register")

public class register extends HttpServlet{
    private static final long serialVersionUID = 1L;
    public register()
    {
        super();
    }
    protected void doGet(HttpServletRequest request,HttpServletResponse response)throws ServletException,IOException
    {
        request.setCharacterEncoding("utf-8");
        response.setContentType("text/html;charset=utf-8");
        utils to=new utils();
        String id=request.getParameter("id");
        String code=request.getParameter("code");
        String shenfen=request.getParameter("shenfen");
        String sql="select * from register where id =?";
        Object[] objs1={id};
        ResultSet rs=to.query(sql, objs1);
             try {
                    if(rs.next()) {
                          System.out.println("已经有该用户");
                          response.getWriter().append("已经有该用户");
                          response.sendRedirect("register.jsp");
                      }
                    else {
                        String sql2="insert into register(id,code,shenfen)values(?,?,?)";
                        Object[] objs2={id,code,shenfen};
                             int a=to.update(sql2,objs2);
                             if(a>0){
                                 request.setAttribute("info","注册成功!!!");
                                 request.setAttribute("link","menu.jsp");
                                 request.getRequestDispatcher("alert.jsp").forward(request, response);
                             }else{
                                 request.setAttribute("info","注册失败!!!");
                                 request.setAttribute("link","register.jsp");
                                 request.getRequestDispatcher("alert.jsp").forward(request,response);
                    
                    }
                    }
        }catch(SQLException e)
        {
            e.printStackTrace();
        }
    }
    protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        // TODO Auto-generated method stub
        doGet(request, response);
    }
}

sturevise.java:       学生修改个人信息的servlet

package Servlet;

import java.io.IOException;
import java.sql.ResultSet;
import java.sql.SQLException;

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 utils.utilss;

@WebServlet("/sturevise")
public class sturevise extends HttpServlet{
    private static final long serialVersionUID = 1L;
    public sturevise()
    {
        super();
    }
    protected void doGet(HttpServletRequest request,HttpServletResponse response)throws ServletException,IOException
    {
        request.setCharacterEncoding("utf-8");
        response.setContentType("text/html;charset=utf-8");
        utilss to=new utilss();
        //String stuid=request.getParameter("stuid");
        String name=request.getParameter("name");
        String sex=request.getParameter("sex");
        String banji=request.getParameter("banji");
        String zhuanye=request.getParameter("zhuanye");
        String s=(String)request.getSession().getAttribute("idnum");
        String sql="select * from student where stuid =?";
        Object[] objs1={s};
        ResultSet rs=to.query(sql, objs1);
         try {
                if(rs.next()) 
                {
                    String sql2="update student set name=?,sex=?,banji=?,zhuanye=? where stuid=?";
                    Object[] objs2={name,sex,banji,zhuanye,s};
                     int a=to.update(sql2,objs2);
                     if(a>0){
                         request.setAttribute("info","修改成功!!!");
                         request.setAttribute("link","student.jsp");
                         request.getRequestDispatcher("alert.jsp").forward(request, response);
                     }else{
                         request.setAttribute("info","修改失败!!!");
                         request.setAttribute("link","sturevise.jsp");
                         request.getRequestDispatcher("alert.jsp").forward(request,response);
                    }
                }
                else {
                    System.out.println("不存在该用户");
                    request.setAttribute("link","sturevise.jsp");
                     request.getRequestDispatcher("alert.jsp").forward(request,response);
                }
    }catch(SQLException e)
    {
        e.printStackTrace();
    }
}
    protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        // TODO Auto-generated method stub
        doGet(request, response);
    }
}

tearevise.java:    老师修改个人信息的servlet

package Servlet;

import java.io.IOException;
import java.sql.ResultSet;
import java.sql.SQLException;

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 utils.utilst;

@WebServlet("/teacherrevise")
public class teacherrevise extends HttpServlet{
    private static final long serialVersionUID = 1L;
    public teacherrevise()
    {
        super();
    }
    protected void doGet(HttpServletRequest request,HttpServletResponse response)throws ServletException,IOException
    {
        request.setCharacterEncoding("utf-8");
        response.setContentType("text/html;charset=utf-8");
        utilst to=new utilst();
        String teaid=request.getParameter("teaid");
        String teaname=request.getParameter("teaname");
        String sex=request.getParameter("sex");
        String xueyuan=request.getParameter("xueyuan");
        String zhicheng=request.getParameter("zhicheng");
        String sql="select * from teacher where teaid =?";
        String s=(String)request.getSession().getAttribute("idnum");
        Object[] objs1={s};
        ResultSet rs=to.query(sql, objs1);
         try {
                if(rs.next()) 
                {
                    String sql2="update teacher set teaname=?,sex=?,xueyuan=?,zhicheng=? where teaid=?";
                    Object[] objs2={teaname,sex,xueyuan,zhicheng,s};
                     int a=to.update(sql2,objs2);
                     if(a>0){
                         request.setAttribute("info","修改成功!!!");
                         request.setAttribute("link","teacher.jsp");
                         request.getRequestDispatcher("alert.jsp").forward(request, response);
                     }else{
                         request.setAttribute("info","修改失败!!!");
                         request.setAttribute("link","teacherrevise.jsp");
                         request.getRequestDispatcher("alert.jsp").forward(request,response);
                    }
                }
                else {
                    System.out.println("不存在该用户");
                    request.setAttribute("link","teacherrevise.jsp");
                     request.getRequestDispatcher("alert.jsp").forward(request,response);
                }
    }catch(SQLException e)
    {
        e.printStackTrace();
    }
}
    protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        // TODO Auto-generated method stub
        doGet(request, response);
    }
}

xuanke.java:    判定选课的servlet

package Servlet;

import java.io.IOException;
//import java.sql.ResultSet;
//import java.sql.SQLException;
import java.sql.ResultSet;
import java.sql.SQLException;

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 utils.utilsxuanke;

//import 
@WebServlet("/xuanke")
public class xuanke extends HttpServlet{
    private static final long serialVersionUID = 1L;
    public xuanke()
    {
        super();
    }
    protected void doGet(HttpServletRequest request,HttpServletResponse response)throws ServletException,IOException
    {
        request.setCharacterEncoding("utf-8");
        response.setContentType("text/html;charset=utf-8");
        utilsxuanke to=new utilsxuanke();
        String id=(String)request.getParameter("id");
        String name=(String)request.getParameter("name");
        String s=(String)request.getParameter("s");

        //String id=(String)request.getAttribute("pid");
//        String name=(String)request.getAttribute("pname");
//        String s=(String)request.getAttribute("ps");
        
        String stu=(String)request.getSession().getAttribute("idnum");
        String sql="select * from xuanke where name=?";
        Object[] objs1= {name};
        ResultSet rs=to.query(sql, objs1);
        try {
            if(rs.next())
            {
                System.out.println("已经选用该课程");
                response.getWriter().append("已经选用该课程");
                response.sendRedirect("seeproject.jsp");
            }
            else
            {
                String sql2="insert into xuanke(id,stuid,teaid,name)values(?,?,?,?)";
                Object[] objs2= {id,stu,s,name};
                int a=to.update(sql2, objs2);
                if(a>0){
                     request.setAttribute("info","选课成功!!!");
                     request.setAttribute("link","seeproject.jsp");
                     request.getRequestDispatcher("alert.jsp").forward(request, response);
                 }else{
                     request.setAttribute("info","选课失败!!!");
                     request.setAttribute("link","xuanke.jsp");
                     request.getRequestDispatcher("alert.jsp").forward(request,response);
            }
        
            }
        }catch(SQLException e)
        {
            e.printStackTrace();
        }
    }
    protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        // TODO Auto-generated method stub
        doGet(request, response);
    }
}

这是所有的servlet 与Bean包代码

所出现的问题:

  servlet层太过臃肿,重复的内容太多,这样子写导致代码量太大,逻辑关系会非常的乱,但是是可以理顺的。写完之后与同学交流我了解到了将登陆的ID弄成一个字段传奇整个系统的方法,这种方法会比我的这种减少很多的代码量,后期优化我会认真学习这种架构。

变量的命名不规范,这是我的错误。我会慢慢去改,去学习记忆专业的命名此语与规范。

后面的jsp页面与utils包我会再下个博客发布。

我写的系统中还有很多不足,如果各位大佬有更好的方法欢迎讨论交流。🤭🤭🤭🤭🤭

 

Posted on 2021-11-30 09:46  鱼忆七秒瓶中沙  阅读(114)  评论(0)    收藏  举报