课程增加功能(java web)

1.设计思想

     先写类DBUtil用来连接数据库。在UserDaoImpl2类中写在数据库中添加课程表信息的方法。然后定义类Calss2来写保存超级课表数据:课程名称,任课教师,上课地点的属性及其get和set方法。新建Calss.jsp文件来写保存功能的界面,doClass.jsp文件来接受Class.jsp文件传过来的参数,如果参数不正确,则给出提示并且依旧在保存功能页面,如果正确则跳转页面提示保存成功。新建ValidateUtil类,在类中的方法中判断三个参数是否正确,若不正确并返回错误信息。在doCalss类中调用此方法。

2.源程序代码

  

package com.jaovo.msg.Util;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;

public class DBUtil {
    
    public  static  Connection getConnection() {
        try {
            //1 加载驱动
            Class.forName("com.mysql.jdbc.Driver").newInstance();
        } catch (InstantiationException | IllegalAccessException | ClassNotFoundException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
        String user = "root";
        String password = "root";
        String url = "jdbc:mysql://localhost:3307/jaovo_msg";//定义工具类
        Connection connection = null;
        try {
            //2 创建链接对象connection
             connection = DriverManager.getConnection(url,user,password);
        } catch (SQLException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
        return connection;
    }
    
    //关闭资源的方法
    public static void close(Connection connection ) {
        try {
            if (connection != null) {
                connection.close();
            }
            
        } catch (SQLException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
    }
    public static void close(PreparedStatement preparedStatement ) {
        try {
            if (preparedStatement != null) {
                preparedStatement.close();
            }
            
        } catch (SQLException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
    }
    public static void close(ResultSet resultSet ) {
        try {
            if (resultSet != null) {
                resultSet.close();
            }
            
        } catch (SQLException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
    }
    
}
package com.jaovo.msg.model;

public class Class2 {
    private String  classname;
    private String  teacher;
    private String  address;
    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 getAddress() {
        return address;
    }
    public void setAddress(String address) {
        this.address = address;
    }
    
}
package com.jaovo.msg.dao;
import com.jaovo.msg.model.*;


public interface IUserDao2 {
    public void add(Class2 class2);
}
package com.jaovo.msg.dao;

import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;

import com.jaovo.msg.Util.DBUtil;

import com.jaovo.msg.model.Class2;


public class UserDaoImpl2 implements IUserDao2{
    @Override
    public void add(Class2 class2) {
        //获得链接对象
        Connection connection = DBUtil.getConnection();
        //准备sql语句
        
        PreparedStatement preparedStatement = null;
        ResultSet resultSet = null;
        try {
            String sql = "insert into t_class(classname,teacher,address) value (?,?,?)";
            preparedStatement = connection.prepareStatement(sql);
            preparedStatement.setString(1, class2.getClassname());
            preparedStatement.setString(2,class2.getTeacher());
            preparedStatement.setString(3,class2.getAddress());
            preparedStatement.executeUpdate();
        } catch (SQLException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }finally {
            //关闭资源
            DBUtil.close(resultSet);
            DBUtil.close(preparedStatement);
            DBUtil.close(connection);
        }
        
    }

    
}

 


package com.jaovo.msg.Util;

import java.util.HashMap;
import java.util.Map;

import javax.servlet.http.HttpServletRequest;

public class ValidateUtil {
    public static  boolean validateNull(HttpServletRequest request,String[] fileds) {
        boolean validate = true;
        //map对象用来装载不同的错误信息
        Map<String,String> errorMsg = new  HashMap();
        for(int i=0;i<3;i++) {
            String value = request.getParameter(fileds[i]);
            
            
            
            if(i==1) {
                
                if(value.equals("王建民")||value.equals("刘立嘉")||value.equals("刘丹")||value.equals("王辉")||value.equals("杨子光"))
                {
                    validate=true;
                }
                else
                {
                    validate = false;
                    errorMsg.put(fileds[i], "教师不正确");
                }
            }
            
            if(i==2) {
                 
                 boolean a[]=new boolean[4];
                 String[] sub={"一教","二教","三教","基教"};
                 for(int j=0;j<4;j++) {
                     a[i]=value.startsWith(sub[j]);
                 }
                 boolean is=false;
                 for(int k=0;k<4;k++) {
                     if(a[i]==true)
                         is=true;
                 }
                
                if(is==true)
                {
                    validate=true;
                }
                else
                {
                    validate = false;
                    errorMsg.put(fileds[i], "教室不正确");
                }
            
            if (!validate) {
                request.setAttribute("errormsg", errorMsg);
            }
            }
        }
        
        
        return validate;
    }
    public static String showError(HttpServletRequest request , String filed) {
        Map<String, String> errorMsg = (Map<String,String>)request.getAttribute("errormsg");
        if (errorMsg == null) {
            return "";
        }
        String msg = errorMsg.get(filed);
        if (msg == null) {
            return "";
        }
        return msg;
    }
    
}

 

<%@page import="java.util.Map"%>
<%@ page import="com.jaovo.msg.Util.ValidateUtil" %>
<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Insert title here</title>
</head>
<body>
<%
   Map<String,String> errorMsg=(Map<String,String>)request.getAttribute("errormsg");
%>

   <form action="doClass.jsp" method="post">
   <table align="center" width="50%" border="1">
   <tr><td>课程名称</td>
   <td><input type="text" name="classname"/>
   <%=ValidateUtil.showError(request, "classname")%></td></tr>
  
   <tr><td> 任课教师</td>
   <td><input type="text" name="teacher"/>
   <%=ValidateUtil.showError(request, "teacher")%></td></tr>
   <tr><td> 上课地点</td>
   <td><input type="text" name="address"/>
   <%=ValidateUtil.showError(request, "address")%> </td></tr>
   <tr><td colspan="2" align="center">
   <input type="submit" value="保存"/>
   </td></tr>

</table>
 </form>  

</body>
</html>
<%@page import="com.jaovo.msg.dao.UserDaoImpl2"%>
<%@page import="com.jaovo.msg.model.Class2"%>
<%@page import="java.util.Map"%>
<%@ page import="com.jaovo.msg.Util.ValidateUtil" %>

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Insert title here</title>
</head>
<body>
<%
//接收客户端传递过来的参数
    String  classname= request.getParameter("classname");
    String teacher= request.getParameter("teacher");
    String address = request.getParameter("address");
     boolean validate = ValidateUtil.validateNull(request, new String[]{"classname","teacher","address"});
        if(!validate){
       
    %>
        <jsp:forward page="Class.jsp"></jsp:forward>
    <%
        }
    Class2 class2 = new Class2();
    class2.setClassname(classname);
    class2.setTeacher(teacher);
    class2.setAddress(address);
    UserDaoImpl2 userDao2 = new UserDaoImpl2();
    userDao2.add(class2);
    out.println("添加成功!!");
%>

</body>
</html>

 

 

本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利.
原文地址:https://www.cnblogs.com/wl2017/p/7911021.html