软件工程概论第一次上机作业

设计思路:

源代码:

<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%@page import="project7.DBUtil"%>
<%@page import="project7.Servlet"%>
<%@page import="project7.User"%>
<%@page import="project7.UserDaoImpl"%>

<!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">
<script type="text/javascript">
function check(form){
course=form.course.value;
teacher=form.teacher.value;
place=form.place.value;
if(course==""){
alert("课程名字不能为空");
return false;
}
if(teacher!="王建民"&&teacher!="刘力嘉"&&teacher!="刘丹"&&teacher!="王辉"&&teacher!="杨子光"){
alert("老师必须为王建民 刘立嘉 刘丹 王辉 杨子辉");
return false;
}
if(place!="一教"&&place!="二教"&&place!="三教"&&place!="基教"){
alert("教室必须为一教 二教 三教 基教");
return false;
}
return true;
}
</script>
<title>Insert title here</title>
</head>
<body>

<form name="form1" method="post" onsubmit="return check(form1)" action="${pageContext.request.contextPath}/Servlet?method=add">
<table>
<tr>
<td>课程名称</td>
<td><input type="text" name="course"></td>
</tr>
<tr>
<td>任课教师</td>
<td><input type="text" name="teacher"></td>
</tr>
<tr>
<td>上课地点</td>
<td><input type="text" name="place"></td>
</tr>
<tr>
<td><input type="submit" value="保存"></td>
</tr>

</table>

</form>

</body>
</html>

package project7;

import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

/**
* Servlet implementation class Servlet
*/
@WebServlet("/Servlet")
public class Servlet extends HttpServlet {
private static final long serialVersionUID = 1L;

public void service(HttpServletRequest request,HttpServletResponse response)throws ServletException,IOException{
//获取method判断调用哪一个方法
request.setCharacterEncoding("utf-8");
String method=request.getParameter("method");
switch(method){
case "add" :add(request,response);break;
case "delete":delete(request,response);break;
case "update":update(request,response);break;
}
}

/**
* @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
*/
protected void add(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// TODO Auto-generated method stub
//获取具体信息
request.setCharacterEncoding("utf-8");
String course=request.getParameter("course");
String teacher=request.getParameter("teacher");
String place=request.getParameter("place");
UserDaoImpl userDao=new UserDaoImpl();
User user= new User();
user.setCourse(course);
user.setTeacher(teacher);
user.setPlace(place);
userDao.add(user);
response.sendRedirect("./Folder/list.jsp");
}

/**
* @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
*/
protected void delete(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
request.setCharacterEncoding("utf-8");
UserDaoImpl userDao=new UserDaoImpl();
int id=Integer.parseInt(request.getParameter("id"));
userDao.delete(id);
response.sendRedirect("./Folder/list.jsp");

}
protected void update(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {

}
}

package project7;

import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.List;

public class UserDaoImpl {
public void add(User user) {
//获得链接对象
Connection connection = DBUtil.getConnection();
String sql = "select count(*) from table4";
//创建语句传输对象
PreparedStatement preparedStatement = null;
ResultSet resultSet = null;
try {
//添加信息到SQL
sql = "insert into table4(course,teacher,place) values(?,?,?)";
preparedStatement = connection.prepareStatement(sql);
preparedStatement.setString(1, user.getCourse());
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);
}

}
public void delete(int id) {
Connection connection = DBUtil.getConnection();
String sql = "delete from table4 where id = ?";
PreparedStatement preparedStatement = null;

try {
preparedStatement = connection.prepareStatement(sql);
preparedStatement.setInt(1, id);
preparedStatement.executeUpdate();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}finally {
DBUtil.close(preparedStatement);
DBUtil.close(connection);
}

}
public void update(User user) {
Connection connection = DBUtil.getConnection();
//准备sql语句
String sql = "update table4 set password = ? , nickname=? where id = ?";
//创建语句传输对象
PreparedStatement preparedStatement = null;
try {
preparedStatement = connection.prepareStatement(sql);
preparedStatement.setString(1, user.getCourse());
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(preparedStatement);
DBUtil.close(connection);
}
}

public List<User> load() {
Connection connection = DBUtil.getConnection();
//准备sql语句
String sql = "select * from table4 ";
//创建语句传输对象
PreparedStatement preparedStatement = null;
ResultSet resultSet = null;
//集合中只能放入user对象
List<User> users = new ArrayList<User>();
User user = null;
try {
preparedStatement = connection.prepareStatement(sql);
resultSet = preparedStatement.executeQuery();
while(resultSet.next()) {
user = new User();
user.setCourse(resultSet.getString(1));;
user.setTeacher(resultSet.getString(2));
user.setPlace(resultSet.getString(3));
users.add(user);
}
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}finally {
DBUtil.close(resultSet);
DBUtil.close(preparedStatement);
DBUtil.close(connection);
}
return users;
}

}

时间: 2024-12-30 03:37:51

软件工程概论第一次上机作业的相关文章

C++ 第一次上机作业

今天完成了C++第一次上机作业,感觉比较简单. 题目: 求2个数或3个正整数中的最大数,用带有默认参数的函数实现. 对3个变量按由小到大顺序排序,要求使用变量的引用. 编写一个程序,用同一个函数名对几个数据进行从小到大排序,数据类型可以是整型.浮点型.用重载函数实现. 对第4题改用函数模板实现,并与第4题程序进行对比分析. 第一题代码: 1 #include<iostream> 2 using namespace std; 3 4 void max(int a=0,int b=0,int c=

软件概论第一次课后作业

1.需要网站系统开发需要掌握的技术 网页设计概述.网站设计制作的基本流程.色彩搭配在网站中的应用.网站用户界面的设计.网站广告的设计.网站中表格的使用.网站中层的应用.框架网站的制作.模板网站的制作.使用行为和Javascript制作特效.使用CSS样式表设计网页.建设数据库网站. HTML语法.CSS语法.JavaScript语法 Flash动画创意.GIF动画制作.网页图片处理 个人网站.企业宣传网站.新闻资讯网站.教育网站.电子政务网站.旅游网站.免费资源网站.门户网站.电子商务网站 *数

软件工程概论—第一次作业

①网站系统开发需要的技术有: 一.前台美工设计:Dreamweaver.Flash.Photoshop 二.网站编程:asp.asp.net.php.Jsp.JavaScript.MYSQL ②源代码程序: 1 <!doctype html> 2 3 <html> 4 5 <head> 6 7 <meta charset="utf-8"> 8 9 <title>登录界面</title> 10 11 </hea

软件工程概论第一次作业

1.需要网站系统开发需要掌握的技术: (1)lJava语言 (2)面向对象分析设计思想 (3)设计模式和框架结构 (4)XML语言 (5)网页脚本语言 (6)数据库 (7)应用服务器 (8)集成开发环境 下面我们具体地看每个技术. 1.Java语言 Java语言体系比较庞大,包括多个模块.从WEB项目应用角度讲有JSP.Servlet.JDBC.JavaBean(Application)四部分技术. (1).Java Database Connectivity (JDBC)技术 在Java We

09.09 第一次上机作业

1.编译原理学什么? 答:编译原理主要学:构造编译原理的一般原理和基本方法. 2.为什么学编译原理? 答:编译原理是计算机各专业的一门重要专业基础课,编译程序构造的原理和技术在软件工程,逆向工程,软件再工程,语言转换及其他领域中都有着广泛的应用.学习这本书,我们会掌握编译程序的结构,工作流程及编译程序各组成部分的设计原理和常用的编译技术和方法,为以后从事软件和系统软件的开发打下一定的理论和实践基础. 3.怎么学编译原理? 答:上课认真听,这本书的理论很多,首先搞懂理论,理论可能很难解释很难理解,

编译原理第一次上机作业感想

这次的上机弄懂了许多编译器的原理,做得也很仔细. 在学习了编译原理后我开始明白编译的工作原理了,也更了解编译语言的结构.明白了编译器的编写中需要注意的各项问题,更了解了编译器的编译过程为我之后的编程提供了一 些必不可少的经验,还是我的改错能力有所提高.因为写编译器使我在编程发生错误后能及时了解程序在编译过程中的原理是什么,这样我就能知道我的程序是何处的问题.

软件工程概论—第二次作业

1.本学期要读的书为:①<构建之法>②<人月神话> 2.浏览一遍<构建之法>后,我还有以下问题: ①一般的软件为何在还没做到极致完美的时候就进行发布? ②软件做到什么样子才算是真正的完美,存在真正的完美么?如果达到客户心中的预想值之后,为何还要进行不断的维护和更新? ③怎么知道自己哪些方面要做到“专和精”,那些地方只需要做到“知道就好”? ④敏捷流程是万能的么?他在实际进行的时候会不会出现什么别的问题? ⑤作为一个普通学校软件工程专业的学生,怎样才能打造自己一步步从最底

软件工程概论第一次上课

1.网站系统开发需要掌握的技术 ①数据库链接技术 ②JavaBean技术 ③Servlet技术 ④流行框架与流行XML技术 ⑤集成开发环境 2.本次课堂测试的源程序代码 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"><html><head><meta http-equi

0909第一次上机作业

1.编译原理是计算机专业的一门重要的课程,是介绍编译程序介绍的一般原理的基本方法. 是将程序语言进行翻译,生成可供用户直接执行的二进制代码,即可执行文件. 2.编译原理让我们学到他的根本,让我们知道为什么要这样写,学了这门课,会提高程序员的理论,技术. 这些理论 技术比一个实际的编译器的价值更大 3.编译原理必须自己动手编写,需要多看书,,掌握好基础知识,读一些出名的书  像<龙书><虎书> 写一个编译器 ,我以为是要掌握计算机语言和高级语言,把我们平时用惯的高级语言翻译成计算机的