zoukankan      html  css  js  c++  java
  • 课堂测试——课程信息保存

    一、 程序设计思想

    首先写一个Java文件,存放连接数据库的代码;其次在add.jsp中绘制一个保存的界面;在add.input中对在客户端输入的数据进行接收判断;最后在写一个可对数据库进行添加信息的函数,在add.jsp中进行调用,将数据保存到数据库中。

    二、 源程序代码

    User.java

    package com.jaovo.msg.model;
    
    public class User {
        
    
        private String  lesson;
        private String  teacher;
        private String  place;
    
        public String getLesson() {
            return lesson;
        }
        public void setLesson(String lesson) {
            this.lesson = lesson;
        }
        public String getTeacher() {
            return teacher;
        }
        public void setTeacher(String teacher) {
            this.teacher = teacher;
        }
        public String getPlace() {
            return place;
        }
        public void setPlace(String place) {
            this.place = place;
        }
        
    }
    package com.jaovo.msg.dao;
    
    import java.util.List;
    
    import com.jaovo.msg.model.User;
    
    public interface IUserDao {
        public void add(User user);
        
    }
    package com.jaovo.msg.dao;
    
    import java.sql.Connection;
    import java.sql.PreparedStatement;
    import java.sql.ResultSet;
    import java.sql.SQLException;
    import java.util.ArrayList;
    import java.util.List;
    
    
    import com.jaovo.msg.Util.DBUtil;
    import com.jaovo.msg.Util.UserException;
    import com.jaovo.msg.model.User;
    
    import sun.net.www.content.text.plain;
    
    public class UserDaoImpl implements IUserDao {
    
        @Override
        public void add(User user) {
            //获得链接对象
            Connection connection = DBUtil.getConnection();
            //准备sql语句
            String sql = "select count(*) from t_user where lesson = ?";
            //创建语句传输对象
            PreparedStatement preparedStatement = null;
            ResultSet resultSet = null;
            try {
                preparedStatement = connection.prepareStatement(sql);
                preparedStatement.setString(1, user.getLesson());
                //接收结果集
                resultSet = preparedStatement.executeQuery();
                //遍历结果集
                while(resultSet.next()) {
                    if (resultSet.getInt(1) > 0) {
                        throw new UserException("用户已存在") ;
                    }
                }
                
                sql = "insert into t_user(lesson,teacher,place) value (?,?,?)";
                preparedStatement = connection.prepareStatement(sql);
                preparedStatement.setString(1, user.getLesson());
                preparedStatement.setString(2, user.getTeacher());
                preparedStatement.setString(3, user.getPlace());
                preparedStatement.executeUpdate();
            } catch (SQLException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }finally {
                //关闭资源
                DBUtil.close(resultSet);
                DBUtil.close(preparedStatement);
                DBUtil.close(connection);
            }
            
        }
    
        
    
    }
    <%@page import="com.jaovo.msg.Util.ValidateUtil"%>
    <%@page import="java.util.Map"%>
    <%@ 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>
        <title>用户添加页面</title>
    </head>
    <body>
    
        
        <form action="add.jsp" method="get">
            <table align="center" border="1" width="500">
                <tr>
                    <td>课程名称 : </td>
                    <td>
                        <input type="text" name="lesson" />
                        <%=ValidateUtil.showError(request, "lesson") %>
                    </td>
                </tr>
                    <tr>
                    <td>任课教师:</td>
                    <td>
                        <select name="teacher">
                        <option  value="王建民">王建民</option>
                        <option  value="刘立嘉">刘立嘉</option>
                        <option  value="杨子光">杨子光</option>
                        <option  value="刘丹">刘丹</option>
                        <option  value="王辉">王辉</option>
                        <%=ValidateUtil.showError(request, "teacher") %>
                    </td>
                </tr>
                <tr>
                    <td>上课地点:</td>
                    <td>
                        <select name="place">
                        <option  value="基教">基教</option>
                        <option  value="一教">一教</option>
                        <option  value="二教">二教</option>
                        <option  value="三教">三教</option>
                    
                        <%=ValidateUtil.showError(request, "place") %>
                    </td>
                </tr>
                <tr align="center">
                    <td colspan="2">
                        <input type="submit"  value="保存" />
                    </td>
                </tr>
            </table>
        </form>
        <script language="javascript">
    
    
    </script>
    </body>
    </html>
    <%@page import="com.jaovo.msg.Util.ValidateUtil"%>
    <%@page import="com.jaovo.msg.Util.UserException"%>
    <%@page import="com.jaovo.msg.dao.UserDaoImpl"%>
    <%@page import="com.jaovo.msg.model.User"%>
    <%@ 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>
    <%
        //接收客户端传递过来的参数
        String lesson = request.getParameter("lesson");
        String teacher = request.getParameter("teacher");
        String place = request.getParameter("place");
        boolean validate = ValidateUtil.validateNull(request, new String[]{"lesson","teacher","place"});
        if(!validate){
    %>
        <jsp:forward page="addInput.jsp"></jsp:forward>
    <%
        }
        User user = new User();
        user.setLesson(lesson);
        user.setTeacher(teacher);
        user.setPlace(place);
        UserDaoImpl userDao = new UserDaoImpl();
        try{
            
        userDao.add(user);
        //重定向
        
    %>
    
        
        
    <%
        }catch(UserException e){
    %>
        <h2 style="color:red ; font-size:50px">发生错误 : <%=e.getMessage() %></h2>
        <%
        }
        %>

    三、 运行结果截图

    一、 记录开发过程

     项目计划日志

    名称:课程信息保存                                   日期:2017.11.28

    日期

    上课

    编写程序

    上课

    编写程序

     

     

    周二

    50

    50

    110

    60

     

     

     时间记录日志

    学生       王晓丹                               日期        2017.11.28    

    教师       王建民                               课程        软件工程概论  

    日期

    开始时间

    结束时间

    中断时间

    净时间

    活动

    备注

    C

    U

    2017.11.28

    9:05

    9:50

     

    50min

    课堂测试

     

     

     

     

    10:10

    12:00

     

    110min

    上课

     

     

     

     

    14:00

    15:00

     

    60min

    课堂测试未完成部分

     

     

     

     缺陷记录日志

    学生         王晓丹         

    日期         2017. 11.28    

    教员         王建民        

    程序号      02 课程信息保存 

    日期

    编号

    类型

    引入阶段

    排除阶段

    修复时间

    修复缺陷

    2017.11.28

    1

    数据库连接

    编码

    编译

    60min

     

    描述:代码中有一处名称与数据库中不一样

     

    2

    输入限制

    设计

    编码

    20

     

    描述:可以将任课教师和上课地点设置为下拉菜单模式

     

  • 相关阅读:
    [Android] 升级了新的android studio之后 发生如下的报错,The following classes could not be instantiated:
    [IOS]译Size Classes with Xcode 6: One Storyboard for all Sizes
    [IOS] 利用@IBInspectable
    [IOS]swift自定义uicollectionviewcell
    [IOS]Swift使用SVGKit的记录
    [IOS初学]ios 第一篇 storyboard 与viewcontroller的关系
    [Android]关于filed 遍历资源文件的排序问题
    [Android]关于Installation error: INSTALL_PARSE_FAILED_MANIFEST_MALFORMED ,修改包名
    [Android]用图库打开指定的文件夹,没错是第一个画面直接是图库的文件夹画面
    [Android]新版的sdk中新建一个android应用,增加的PlaceholderFragment这个静态类发生的事情
  • 原文地址:https://www.cnblogs.com/wxd136/p/7911158.html
Copyright © 2011-2022 走看看