博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
javaweb实现添加课程
阅读量:4587 次
发布时间:2019-06-09

本文共 6641 字,大约阅读时间需要 22 分钟。

一.项目需求

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 block18             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 block29             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 block43             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 block54             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 block65             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 block33             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"%>    课程添加页面    
课程名称 :
任课教师:
上课地点:

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  7  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     else24     {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     

发生错误 : <%=e.getMessage() %>

37 <%38 }39 40 41 42 %>43 44 45 46 47

四.运行结果截图

 

转载于:https://www.cnblogs.com/tianxiayoujiu/p/7911091.html

你可能感兴趣的文章
VB调用WebService(SOA2.0接口)(直接Post方式)并解析返回的XML
查看>>
Linux内存管理1---内存寻址
查看>>
java线程详解(三)
查看>>
9.17模拟赛2.0
查看>>
洛谷 P3225 [HNOI2012]矿场搭建
查看>>
orcad找不到dll
查看>>
各种排序算法的性能特点
查看>>
LET IT BE
查看>>
在线帮助你修改图片背景的工具 - Clipping Magic
查看>>
BizTalk动手实验(十三)EDI解决方案开发配置
查看>>
初学github
查看>>
iOS开发拓展篇—UIDynamic(重力行为+碰撞检测)
查看>>
extjs 下载文件 关键前后端代码
查看>>
.NET 4.0 兼容 .NET 2.0 的方法
查看>>
1001 Maximum Multiple(2018 Multi-University Training Contest 1)
查看>>
对Java对象的认识与理解
查看>>
python——父类与子类的一些说明
查看>>
2019年3月3日 2018-2019-2 20189205《移动平台应用开发实践》第二周作业
查看>>
MySQL 性能优化--优化数据库结构之优化数据类型
查看>>
软件工程之软件需求分析
查看>>