课程添加-javaweb-MySQL

登录页面index.jsp 

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>登录</title>
</head>
<body background="images9.jpg">

<form action="addInput.jsp" method="get">
    <p style="text-align:center;color:white;font-family:宋体; font-size:20px">
        

            <br> 学号: <input type="text" name="studentNo" /> <br>
            <br> 密码: <input type="password" name="password" /> <br>
            <br> <input type="submit" value="登录" />  
                 <input type="reset" value="重置" />  <br>
       
    </p>
    
</form>
</body>

</html>

添加课程页面addInput.jsp

<%@ page language="java" contentType="text/html; charset=utf-8"
    pageEncoding="utf-8"%>
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>课程添加页面</title>
</head>
<body background="images9.jpg">

<form action="add.jsp" method="get">
    <p style="text-align:center;color: white; font-family: 宋体; font-size: 20px">
        
        
        
            <br> 课程名称: <input type="text" name="className" /> <br>
            <br> 任课教师: <input type="text" name="teacher" /> <br>
            <br> 上课地点: <input type="text" name="classSpace" /> <br>
            <br> <input type="submit" value="保存" />
                 <input type="submit" value="选课" /> 
                 <input type="reset" value="重置" />  <br>
        
    </p>
    </form>
    
    <jsp:useBean id="util" class="a.Classe_add" scope="page" />
    <%
    String studentNo=(String)request.getParameter("studentNo");
    String password=(String)request.getParameter("password");
    session.setAttribute("studentNo",studentNo);
    session.setAttribute("password",password);
    %>
</body>
</html>

java文件

package a;

import java.sql.*;

public class Classe_add 
{

    private String studentNo;
    private String password;
    private String className;
    private String teacher;
    private String classSpace;
    
    public String getstudentNo() {
        return studentNo;
    }
    public void setstudentNo(String studentNo) {
        this.studentNo = studentNo;
    }
    public String getspassword() {
        return password;
    }
    public void setpassword(String password) {
        this.password = password;
    }
    public String getClassName() {
        return className;
    }
    public void setClassName(String className) {
        this.className = className;
    }
    public String getTeacher() {
        return teacher;
    }
    public void setTeacher(String teacher) {
        this.teacher = teacher;
    }
    public String getClassSpace() {
        return classSpace;
    }
    public void setClassSpace(String classSpace) {
        this.classSpace = classSpace;
    }
    
    public Connection getConnection()//连接数据库
    {
        try{
            Class.forName("com.mysql.cj.jdbc.Driver");
            //System.out.println("加载驱动成功");
        }catch(ClassNotFoundException e)
        {
            e.printStackTrace();
        }
        String user="root";
        String password="123456";
        String url = "jdbc:mysql://localhost:3306/ztest01?useSSL=false&serverTimezone=GMT&characterEncoding=utf-8&autoReconnect=true";
        Connection con=null;
        try{
            con=DriverManager.getConnection(url,user,password);
            //System.out.println("数据库连接成功");
        }catch(SQLException e)
        {
            e.printStackTrace();
        }
        return con;
    }


    
    public void addClass(String studentNo, String className,String teacher,String classSpace )
    {
        Connection connection = getConnection();
        String sql="select count(*) from classdata where studentNo = ?";
        
        PreparedStatement preparedStatement=null;
        ResultSet resultSet=null;
        
        try {
            preparedStatement=connection.prepareStatement(sql); 
            preparedStatement.setString(1,getstudentNo());
            
            resultSet = preparedStatement.executeQuery();

            sql = "insert into classdata (studentNo,className,teacher,classSpace) values (?,?,?,?)";
            preparedStatement=connection.prepareStatement(sql);
            preparedStatement.setString(1,studentNo);
            preparedStatement.setString(2,className);
            preparedStatement.setString(3,teacher);
            preparedStatement.setString(4,classSpace);
            preparedStatement.executeUpdate();
            System.out.println("课程添加成功");
            
        } catch (SQLException  e) {
            e.printStackTrace();
        }finally{
            close(resultSet);
            close(preparedStatement);
            close(connection);
        }
    }
    
    public void addNo(String studentNo,String password)
    {
        Connection connection = getConnection();
        String sql="select count(*) from studentdata where studentNo = ?";
        
        PreparedStatement preparedStatement=null;
        ResultSet resultSet=null;
        
        try {
            preparedStatement=connection.prepareStatement(sql); 
            preparedStatement.setString(1,getstudentNo());
            
            resultSet = preparedStatement.executeQuery();

            sql = "insert into studentdata (studentNO,password) values (?,?)";
            preparedStatement=connection.prepareStatement(sql);
            preparedStatement.setString(1,studentNo);
            preparedStatement.setString(2,password);
            preparedStatement.executeUpdate();
            System.out.println("信息添加成功");
            
        } catch (SQLException  e) {
            e.printStackTrace();
        }finally{
            close(resultSet);
            close(preparedStatement);
            close(connection);
        }
        
    }
    
    public  void close (Connection con)
    {
        try{
            if(con!=null)
            {
                con.close();
            }
        }catch(SQLException e)
            {
                e.printStackTrace();
            }
    }
    public  void close (PreparedStatement preparedStatement)
    {
        try{
            if(preparedStatement!=null)
            {
                preparedStatement.close();
            }
        }catch(SQLException e)
        {
            e.printStackTrace();
        }
    }
    public  void close(ResultSet resultSet)
    {
        try{
            if(resultSet!=null)
            {
                resultSet.close();
            }
        }catch(SQLException e)
        {
            e.printStackTrace();
        }
    }
    public boolean judgeInputNull(String className,String teacher,String classSpace)
    {
        boolean flag=false;
        if(className==null||"".equals(className)&&teacher==null||"".equals(teacher)&&classSpace==null||"".equals(classSpace))
        {
            flag=true;
        }
        return flag;
    }
    public boolean judgeClassRepeat(String className)
    {
        boolean flag=false;
        
        Connection connection = getConnection();
        String sql="select className from classtab where className = ?";    
        
        PreparedStatement preparedStatement=null;
        ResultSet resultSet=null;
        try {
            preparedStatement=connection.prepareStatement(sql);    
            preparedStatement.setString(1,className);
            resultSet = preparedStatement.executeQuery();
            while(resultSet.next()) 
            {
    
                if(className.equals(resultSet.getString("className")))
                {
                    flag=true;
                }
                
            }
        }catch (SQLException e) {
            e.printStackTrace();
        }finally {
            close(resultSet);
            close(preparedStatement);
            close(connection);
        }
        return  flag;
    }
    
    public boolean judeInputTeacher(String teacher)
    {
        boolean flag=false;
        if((!teacher.equals("王建民"))&&!teacher.equals("刘立嘉")&&!teacher.equals("刘丹")&&!teacher.equals("王辉")&&!teacher.equals("杨子光"))
        {
            flag=true;
        }
       
        return flag;
    }
    public boolean judgeInputClassSpace(String space)
    {
        boolean flag=false;
        if(!space.startsWith("一教")&&!space.startsWith("二教")&&!space.startsWith("三教")&&!space.startsWith("基教"))
        {
            flag=true;
        }
        return flag;
    }
    public static void main(String[] args)
    {
       Classe_add a=new Classe_add();        
       
       
    }
}

条件判断add.jsp

<%@page import="a.Classe_add"%>
<%@ page language="java" contentType="text/html; charset=utf-8"
    pageEncoding="utf-8"%>
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title></title>
</head>
<body>
    <jsp:useBean id="util" class="a.Classe_add" scope="page" />
    <%

  String className=(String)request.getParameter("className");
  String teacher=(String)request.getParameter("teacher");
  String classSpace=(String)request.getParameter("classSpace");
  String studentNo=(String)session.getAttribute("studentNo");
  String password=(String)session.getAttribute("password");
  
  util.addNo(studentNo,password);
  
  
  if(util.judgeInputNull(className, teacher, classSpace))
  {
      
      out.print("<script language ='javaScript'> alert('输入不能为空,请输入');window.history.back(-1); </script>");
  }
  else  if(util.judgeClassRepeat(className))
  {
      out.print("<script language='javaScript'> alert('课程名称重复,重新输入');window.history.back(-1);</script>");
  }
  
  else if(util.judeInputTeacher(teacher))
  {
      out.print("<script language='javaScript'> alert('该老师不存在,重新输入');window.history.back(-1);</script>");
  }
  else if(util.judgeInputClassSpace(classSpace))
  {
      out.print("<script language='javaScript'> alert('教室不存在,重新输入');window.history.back(-1);</script>");
  }
  
  else {
      
      util.addClass(studentNo,className,teacher,classSpace);
      out.print("<script language='javaScript'> alert('添加成功');</script>");
      response.setHeader("refresh", "0;url=addInput.jsp");
  }
  
  
    %>
</body>
</html>

实现登录、选课、然后将学生信息和选课信息添加到数据库。

原文地址:https://www.cnblogs.com/a8047/p/13923114.html