1.程序设计思想
(1)新建数据库,名称为dbCourse,新建表,表名为t_user。
(2)创建包DBBean,将sqljdbc_4.0导入到lib中和Referenced Libraries,在DBBean中下,创建AddCourse.class文件,在里面有数据库的操作,通过sa用户连接。创建AddCourse类,在类中有异常处理,创建类addCourse,形参有3个,分别为name,teacher,point,均为String类型。在类中输入代码进行提示,判断课程,教师,上课地点是否输入成功。创建类close,在类中,判断conn与pstmt是否为空,若为空,关闭资源。在WebContent中创建addcourse.jsp文件。在jsp文件中《body》标签内,定义String类型的变量name,teacher,point。在try中调用函数,添加信息。创建course.html。在里面进行教师,上课地点的选择。
2.源代码
package DBBean; import java.sql.*; public class AddCourse{ private String driverStr = "com.microsoft.sqlserver.jdbc.SQLServerDriver"; private String connStr = "jdbc:sqlserver://localhost:1433; DatabaseName=dbCourse"; private String dbusername = "sa"; private String dbpassword = "lijing925"; private Connection conn = null; private PreparedStatement pstmt = null; public AddCourse(){ try{ Class.forName(driverStr); conn = DriverManager.getConnection(connStr, dbusername, dbpassword); } catch (Exception ex) { System.out.println(ex.getMessage()); } } public void addCourse(String name,String teacher,String point){ try{ String sql = "insert into t_course values(‘"+name+"‘,‘" +teacher+ "‘,‘"+point+"‘)"; pstmt=conn.prepareStatement(sql); int rst=pstmt.executeUpdate(); if(rst!=0){ System.out.println("Insert Success!"); } else{ System.out.println("Insert Fail!"); } } catch(Exception e){ System.out.println(e.getMessage()); } finally{ this.close(); } } public void close(){ try { if(conn!=null){ conn.close(); } if(pstmt!=null){ pstmt.close(); } } catch (SQLException e) { System.out.println(e.getMessage());; } } }
<%@ 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>添加课程</title> </head> <body> <jsp:useBean id="add" class="DBBean.AddCourse"/> <% request.setCharacterEncoding("UTF-8"); String name=(String)request.getParameter("name"); String teacher=(String)request.getParameter("teacher"); String point=(String)request.getParameter("point"); try{ add.addCourse(name, teacher, point); out.print("<script language=‘javaScript‘> alert(‘添加课程成功!‘);</script>"); response.setHeader("refresh", "0;url=course.html"); } catch(Exception e){ out.print("<script language=‘javaScript‘> alert(‘"+e.getMessage()+"‘);</script>"); response.setHeader("refresh", "0;url=course.html"); } %> </body> </html>
<!doctype html> <html> <head> <meta charset="utf-8"> <title>添加课程信息</title> </head> <body> <center> <h1 style="color:orange">添加课程信息</h1> <form action="addcourse.jsp" method="get"> <table border="0"> <tr> <td>课题名称</td> <td> <input type="text" maxlength="8" name="name"> </td> </tr> <tr> <td>任课教师:</td> <td> <select name="teacher"> <option value="王建民">王建民</option> <option value="刘立嘉">刘立嘉</option> <option value="杨子光">杨子光</option> <option value="刘丹">刘丹</option> <option value="王辉">王辉</option> </select> </td> </tr> <tr> <td>上课地点:</td> <td> <select name="point"> <option value="一教">一教</option> <option value="二教">二教</option> <option value="三教">三教</option> <option value="基教">基教</option> </select> </td> </tr> </table> </form> <input type="button" value="保存" onclick="confir()"> </center> </body> </html> <script language="javascript"> function confir(){ var n=document.forms[0].name.value; if(n==""){ alert("课程名称输入为空!"); } else{ document.forms[0].submit(); } } </script>
3.实验截图
4.
项目计划日志
名称:课程信息保存 日期:2017.11.28
日期 |
上课 |
编写程序 |
上课 |
编写程序 |
||
周二 |
50min |
50min |
110min |
150min |
时间记录日志
学生 李静 日期 2017.11.28
教师 王建民 课程 软件工程概论
日期 |
开始时间 |
结束时间 |
中断时间 |
净时间 |
活动 |
备注 |
C |
U |
2017.11.28 |
9:05 |
9:50 |
50min |
课堂测试 |
||||
10:10 |
12:00 |
110min |
上课 |
|||||
14:00 |
15:00 |
150min |
课堂测试未完成部分 |
缺陷记录日志
学生 李静
日期 2017. 11.28
教员 王建民
程序号 02 课程信息保存
日期 |
编号 |
类型 |
引入阶段 |
排除阶段 |
修复时间 |
修复缺陷 |
2017.11.28 |
1 |
数据库连接 |
编码 |
编译 |
60min |
|
描述:代码中有一处名称与数据库中不一样 |
||||||
2 |
输入限制 |
设计 |
编码 |
30min |
||
描述:可以将任课教师和上课地点设置为下拉菜单模式 |
时间: 2024-10-14 21:50:05