zoukankan      html  css  js  c++  java
  • javaweb实现添加课程

    一.项目需求

    1.设计添加新课程界面。

    2.在后台数据库中建立相应的表结构存储课程信息。

    3.实现新课程添加的功能。 要求限定教师为系中的5位老师。

    4.要求限制上课地点开头为“一教、二教、三教、基教”中的一种。

    5.实现数据存储功能。

    二.设计思想

    1.提取到需求中最主要的对象为课程,所以首先创建课程类。

    该类包含三个参数:a.课程名称  b.教师名称  c.上课地点。构建get和set函数

    2.构建一个辅助类,用来创建数据库连接

    3.创建一个接口,其中有一个静态方法,传入一个课程类的对象。能够实现将该对象传入数据库

    4.创建一个异常,用来在课程出错时,弹出异常信息。

    5.创建一个前段界面,显示界面信息

    6.创建一个后端页面,接受来自前端的消息,并且对其进行判断。如果在限定条件内,则添加到数据库。否则,抛出异常,跳转页面

    三.源程序代码

    (1)java

    1.创建课程类

     1 package com.jaovo.msg.model;
     2 
     3 public class HaveClass 
     4 {
     5     private String  teachername;
     6     private String  place;
     7     private String  classname;
     8     
     9     public String getTeachername() {
    10         return teachername;
    11     }
    12     public void setTeachername(String teachername) {
    13         this.teachername = teachername;
    14     }
    15     public String getPlace() {
    16         return place;
    17     }
    18     public void setPlace(String place) {
    19         this.place = place;
    20     }
    21     public String getClassname() {
    22         return classname;
    23     }
    24     public void setClassname(String classname) {
    25         this.classname = classname;
    26     }
    27 
    28 }

    2.创建辅助类,完成数据库连接

     1 package com.jaovo.msg.Util;
     2 
     3 import java.sql.Connection;
     4 import java.sql.DriverManager;
     5 import java.sql.PreparedStatement;
     6 import java.sql.ResultSet;
     7 import java.sql.SQLException;
     8 
     9 public class DBUtil 
    10 {
    11     
    12     public  static  Connection getConnection() {
    13         try {
    14             
    15             Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver").newInstance();
    16         } catch (InstantiationException | IllegalAccessException | ClassNotFoundException e) {
    17             // TODO Auto-generated catch block
    18             e.printStackTrace();
    19         }
    20         String user = "sa";
    21         String password = "jisuan@10Q";
    22         String url = "jdbc:sqlserver://127.0.0.1:1433;DatabaseName=OnClass";
    23         Connection connection = null;
    24         try {
    25             
    26              connection = DriverManager.getConnection(url,user,password);
    27         } catch (SQLException e) {
    28             // TODO Auto-generated catch block
    29             e.printStackTrace();
    30         }
    31         return connection;
    32     }
    33     
    34     
    35     public static void close(Connection connection ) {
    36         try {
    37             if (connection != null) {
    38                 connection.close();
    39             }
    40             
    41         } catch (SQLException e) {
    42             // TODO Auto-generated catch block
    43             e.printStackTrace();
    44         }
    45     }
    46     public static void close(PreparedStatement preparedStatement ) {
    47         try {
    48             if (preparedStatement != null) {
    49                 preparedStatement.close();
    50             }
    51             
    52         } catch (SQLException e) {
    53             // TODO Auto-generated catch block
    54             e.printStackTrace();
    55         }
    56     }
    57     public static void close(ResultSet resultSet ) {
    58         try {
    59             if (resultSet != null) {
    60                 resultSet.close();
    61             }
    62             
    63         } catch (SQLException e) {
    64             // TODO Auto-generated catch block
    65             e.printStackTrace();
    66         }
    67     }
    68     
    69 }

    3.创建一个类,用来实现添加到数据库中

     1 package com.jaovo.msg.dao;
     2 
     3 import java.sql.Connection;
     4 import java.sql.PreparedStatement;
     5 import java.sql.ResultSet;
     6 import java.sql.SQLException;
     7 
     8 import com.jaovo.msg.Util.DBUtil;
     9 import com.jaovo.msg.model.HaveClass;
    10 
    11 
    12 public class ClassDaoImpl {
    13     
    14     public void add(HaveClass claz) 
    15     {
    16         //获得链接对象
    17         Connection connection = DBUtil.getConnection();
    18         
    19         //准备sql语句
    20         String sql = "insert into t_class(teachername,classname,place) values(?,?,?)";
    21         PreparedStatement preparedStatement = null;
    22         try {
    23         //创建语句传输对象
    24         preparedStatement = connection.prepareStatement(sql);
    25         
    26         preparedStatement = connection.prepareStatement(sql);
    27         preparedStatement.setString(1, claz.getTeachername());
    28         preparedStatement.setString(2, claz.getClassname());
    29         preparedStatement.setString(3, claz.getPlace());
    30         preparedStatement.executeUpdate();
    31         } catch (SQLException e) {
    32             // TODO Auto-generated catch block
    33             e.printStackTrace();
    34         }finally {
    35             //关闭资源
    36             
    37             DBUtil.close(preparedStatement);
    38             DBUtil.close(connection);
    39         }
    40         
    41     }
    42 
    43 }

    4.使用jsp文件,创建前端界面

    <%@ 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="classname" />
                    </td>
                </tr>
                    <tr>
                    <td>任课教师:</td>
                    <td>
                        <input type="text" name="teachername" />
                    </td>
                </tr>
                <tr>
                    <td>上课地点:</td>
                    <td>
                        <input type="text" name="place" />
                    </td>
                </tr>
                <tr align="center">
                    <td colspan="2">
                        <input type="submit" value="提交" />
                        <input type="reset" value="重置" />
                    </td>
                </tr>
            </table>
        </form>
    </body>
    </html>

    5.创建后端界面,完成对数值的校验

     1 <%@page import="com.jaovo.msg.Util.ClassException"%>
     2 <%@page import="com.jaovo.msg.dao.ClassDaoImpl"%>
     3 <%@page import="com.jaovo.msg.model.HaveClass"%>
     4 <%@ page language="java" contentType="text/html; charset=UTF-8"
     5     pageEncoding="UTF-8"%>
     6 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
     7 <html>
     8 <%
     9     //接收客户端传递过来的参数
    10     
    11     String teachername = request.getParameter("teachername");
    12     String classname = request.getParameter("classname");
    13     String place = request.getParameter("place");
    14     try{
    15     if(!teachername.trim().equals("王建民")&&!teachername.trim().equals("刘立嘉")&&!teachername.trim().equals("刘丹")&&!teachername.trim().equals("王辉")&&!teachername.trim().equals("杨子光"))
    16     {
    17         throw new ClassException("不能输入规定之外的老师名称");
    18     }
    19     else if(!place.trim().startsWith("基教")&&!place.trim().startsWith("一教")&&!place.trim().startsWith("二教")&&!place.trim().startsWith("三教"))
    20     {
    21         throw new ClassException("不能输入规定之外的地点名称!");
    22     }
    23     else
    24     {
    25         HaveClass haveclass = new HaveClass();
    26         haveclass.setTeachername(teachername);
    27         haveclass.setClassname(classname);
    28         haveclass.setPlace(place);
    29         ClassDaoImpl classDao = new ClassDaoImpl();
    30         classDao.add(haveclass);
    31     }
    32     
    33     }catch(ClassException e){
    34         
    35 %>
    36     <h2 style="color:red ; font-size:50px">发生错误 : <%=e.getMessage() %></h2>
    37 <%
    38     }
    39     
    40     
    41     
    42 %>
    43 
    44     
    45 
    46 
    47 </html>

    四.运行结果截图

  • 相关阅读:
    页面加载完毕相关信息淡入效果
    导航菜单底部滑动条跟随效果
    我要成为优秀的前端一员!
    (转)git合并多个commit
    Windows 7 + PHP 5.3 + WAMP 下 Imagick 扩展安装
    使用 PHP 框架 Yii 访问 MS SQL 的尝试
    拼合逐月数据系列
    编程视频教程推荐
    Java 实现 Domino邮箱自动注册
    二、 编写一个类,用两个栈实现队列,支持队列的基本操作(add,poll,peek)
  • 原文地址:https://www.cnblogs.com/tianxiayoujiu/p/7911091.html
Copyright © 2011-2022 走看看