信息学院
课程综合实训报告
课程名称Javaweb程序设计
姓名范浩
专业计算机应用
班级14-2
指导教师王伟、宫明明
学期2016-2017学年秋季学期课时40
学分 2
信息学院
二〇一六年十二月
一、实训目的
通过对Java语言、JavaWeb、Oracle数据库应用设计及SQL语言的复习和锻炼,并且通过使用MyEclipse 开发平台设计库存管理系统项目,以达到充分熟悉开发平台及其应用设计。同时掌握并实践软件项目设计规范及其开发流程:需求分析、概要设计、详细设计、代码编写、系统测试及软件手册编写,以便提前适应软件公司开发流程、环境和工作要求
二、实训内容
1.描述
.用户输入服务器网址后,首先显示登录界面,用户输入用户名和密码登录,登录错误提示错误信息,登录成功根据不同类型用户进入不同的界面。用户总共有三类:学生、教师、管理员;学生账号是全部数字的学号,教师账号是qtc+数字,管理员的账号也是教师账号,但管理员有特殊权限。
2.管理员操作:,主要是对学生、教师、课程的信息进行增删改查。制定课程的任课教师、制定班级的开课课程等。
3.教师操作:录入学生成绩,修改学生成绩
4.学生操作:成绩查询
2.需求分析
在现代化的教育技术模式下,计算机已经广泛应用于学校的教育管理,给传统的教学方式带来了重大的革命。如何有效管理学生成绩是摆在我们面前的一个新的课题。
本文在研究目前国内外作业管理情况的基础上,从学校的实际需求出发,采用当前较为流行的javaweb开发技术,SQL Server 2000数据库,设计并实现了一个功能较为完善的CRP 管理系统。通过对系统进行一系列的需求分析、设计、编码、测试等工作
1).数据描述
SMSuser:,userId(用户账号,用户类型不同,账号格式不同),userName,userPassword,userSex,userType(用户类型:学生,老师,管理员) courseId(记录外键) classId(记录外键)
score:Sid(记录主键),userId(学生Id),score(分数) courseId(记录外键)
course:courseId(记录主键),courseName(课程名) class1:classId(记录主键),className(班级名称名) 出现一个bug 应该把classid放到user里面
3.分工描述
四.核心部分源代码
此处罗列设计中的核心类代码,列出类的成员变量和成员方法,类请加上如下注释
用户类:private String userId;
private String userName;
private String userPassword;
private String userSex;
private String userType;
private String courseId;
private String classId;
public String getUserId() {
return userId;
}
publicvoid setUserId(String userId) {
https://www.wendangku.net/doc/293595482.html,erId = userId;
}
public String getUserName() {
return userName;
}
publicvoid setUserName(String userName) {
https://www.wendangku.net/doc/293595482.html,erName = userName;
}
public String getUserPassword() {
return userPassword;
}
publicvoid setUserPassword(String userPassword) {
https://www.wendangku.net/doc/293595482.html,erPassword = userPassword;
public String getUserSex() {
return userSex;
}
publicvoid setUserSex(String userSex) { https://www.wendangku.net/doc/293595482.html,erSex = userSex;
}
public String getUserType() {
return userType;
}
publicvoid setUserType(String userType) { https://www.wendangku.net/doc/293595482.html,erType = userType;
}
public String getCourseId() {
return courseId;
}
publicvoid setCourseId(String courseId) { this.courseId = courseId;
}
public String getClassId() {
return classId;
}
publicvoid setClassId(String classId) { this.classId = classId;
}
分数类private String Sid;
private String userId;
private String score;
private String courseId;
public String getSid() {
return Sid;
}
publicvoid setSid(String sid) {
Sid = sid;
}
public String getUserId() {
return userId;
}
publicvoid setUserId(String userId) { https://www.wendangku.net/doc/293595482.html,erId = userId;
}
public String getScore() {
return score;
}
publicvoid setScore(String score) {
this.score = score;
}
public String getCourseId() {
return courseId;
}
publicvoid setCourseId(String courseId) {
this.courseId = courseId;
}:
课程类private String courseId;
private String courseName;
public String getCourseId() {
return courseId;
}
publicvoid setCourseId(String courseId) {
this.courseId = courseId;
}
public String getCourseName() {
return courseName;
}
publicvoid setCourseName(String courseName) {
this.courseName = courseName;
}
班级表:private String classId;
private String className;
public String getClassId() {
return classId;
}
publicvoid setClassId(String classId) {
this.classId = classId;
}
public String getClassName() {
return className;
}
publicvoid setClassName(String className) {
this.className = className;
}
登录处理:String userid=request.getParameter("userid");
String userpassword=request.getParameter("userpassword"); String usertype=request.getParameter("usertype");
SMSuser user=new SMSuser();
user.setUserId(userid);
user.setUserPassword(userpassword);
user.setUserType(usertype);
ResultSet rs=new SMSuserdaoImpl().LoginJudgmentType(user);
try {
if(rs.next()){
HttpSession session=request.getSession();
session.setAttribute("user", user);
String useid=rs.getString("userId");
String pwd=rs.getString("userPassword");
String userType=rs.getString("userType");
if("1".equals(userType)){
request.getRequestDispatcher("students.jsp").forward(request, response);
}
else
if("2".equals(userType)){
response.sendRedirect("teacher.jsp");
}
else
if("3".equals(userType)){
response.sendRedirect("adminnistrator.jsp");
}
}
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
数据库:
public ResultSet LoginJudgmentType(SMSuser user) {
// TODO Auto-generated method stub
con=db.getconnection();
String sql="select * from SMSuser where userId=? and userPassword=? and userType=?";
try {
ps=con.prepareStatement(sql);
ps.setString(1, user.getUserId());
ps.setString(2, user.getUserPassword());
ps.setString(3, user.getUserType());
rs=ps.executeQuery();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return rs;
}
学生查分: