1、javaweb学生成绩管理系统信息学院课程综合实训报告课程名称Javaweb程序设计姓 名范浩专 业计算机应用班 级14-2指导教师王伟、宫明明学 期2016-2017学年秋季学期课 时40学 分2信息学院二一六年十二月一、实训目的通过对Java语言、JavaWeb、Oracle数据库应用设计及SQL语言的复习和锻 炼,并且通过使用MyEclipse 开发平台设计库存管理系统项目,以达到充分熟悉开发平台及其应用设计。同时掌握并实践软件项目设计规范及其开发流程:需求分析、概要设计、详细设计、代码编写、系统测试及软件手册编写,以便提前适应软件公司开发流程、环境和工作要求二、实训内容1.描述.用户输
2、入服务器网址后,首先显示登录界面,用户输入用户名和密码登录,登录错误提示错误信息,登录成功根据不同类型用户进入不同的界面。用户总共有三类:学生、教师、管理员;学生账号是全部数字的学号,教师账号是qtc+数字,管理员的账号也是教师账号,但管理员有特殊权限。2.管理员操作: ,主要是对学生、教师、课程的信息进行增删改查。制定课程的任课教师、制定班级的开课课程等。3.教师操作:录入学生成绩,修改学生成绩4.学生操作:成绩查询2需求分析在现代化的教育技术模式下,计算机已经广泛应用于学校的教育管理,给传统的教学方式带来了重大的革命。如何有效管理学生成绩是摆在我们面前的一个新的课题。本文在研究目前国内外作
3、业管理情况的基础上,从学校的实际需求出发,采用当前较为流行的javaweb开发技术, SQL Server 2000数据库,设计并实现了一个功能较为完善的CRP管理系统。通过对系统进行一系列的需求分析、设计、编码、测试等工作1).数据描述 SMSuser:,userId(用户账号,用户类型不同,账号格式不同),userName, userPassword,userSex,userType(用户类型:学生,老师,管理员) courseId(记录外键) classId(记录外键) score:Sid(记录主键),userId(学生Id),score(分数) courseId(记录外键)course
4、:courseId(记录主键),courseName(课程名) class1:classId(记录主键), className(班级名称名) 出现一个bug 应该把classid放到user里面 3分工描述姓名完成模块完成情况备注范浩学生查询 及添加学生查看全部课程,查看班级基本信息 好李文哲学生查询 及添加学生查看全部课程,查看班级基本信息好王玮学生查询 及添加学生查看全部课程,查看班级基本信息好四核心部分源代码此处罗列设计中的核心类代码,列出类的成员变量和成员方法,类请加上如下注释用户类:private String userId; private String userName; pri
5、vate String userPassword; private String userSex; private String userType; private String courseId; private String classId;public String getUserId() return userId;public void setUserId(String userId) this.userId = userId;public String getUserName() return userName;public void setUserName(String user
6、Name) this.userName = userName;public String getUserPassword() return userPassword;public void setUserPassword(String userPassword) this.userPassword = userPassword;public String getUserSex() return userSex;public void setUserSex(String userSex) this.userSex = userSex;public String getUserType() ret
7、urn userType;public void setUserType(String userType) this.userType = userType;public String getCourseId() return courseId;public void setCourseId(String courseId) this.courseId = courseId;public String getClassId() return classId;public void setClassId(String classId) this.classId = classId;分数类 pri
8、vate String Sid; private String userId; private String score; private String courseId;public String getSid() return Sid;public void setSid(String sid) Sid = sid;public String getUserId() return userId;public void setUserId(String userId) this.userId = userId;public String getScore() return score;pub
9、lic void setScore(String score) this.score = score;public String getCourseId() return courseId;public void setCourseId(String courseId) this.courseId = courseId;:课程类private String courseId; private String courseName;public String getCourseId() return courseId;public void setCourseId(String courseId)
10、 this.courseId = courseId;public String getCourseName() return courseName;public void setCourseName(String courseName) this.courseName = courseName;班级表: private String classId; private String className;public String getClassId() return classId;public void setClassId(String classId) this.classId = cl
11、assId;public String getClassName() return className;public void 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(
12、); 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.getStrin
13、g(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 (SQLExcepti
14、on 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.setStrin
15、g(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; 学生查分: 你好同学,请输入: 学号: 姓名: 课程: 查分处理:String scoreId=request.getParameter(scoreId); String user
16、Id=request.getParameter(userId); String coursecourseId=request.getParameter(coursecourseId); String score=request.getParameter(score); Score sc=new Score(); sc.setSid(scoreId); sc.setUserId(userId); sc.setCourseId(coursecourseId); sc.setScore(score); boolean flag=new ScoreDaoImpl().TeacherTOInsertSt
17、udentScore(sc); if(flag) request.getRequestDispatcher(ScoreInsertSuccessfully.jsp).forward(request, response); 数据库 public ResultSet StudentsTosearchScore(SMSuser user) / TODO Auto-generated method stub con=db.getconnection(); String sql=select SMSuser.userId,userName,courseName,score from SMSuser,co
18、urse,score where SMSuser.courseId=course.courseId and course.courseId=score.courseId and SMSuser.userId=?; try ps=con.prepareStatement(sql); ps.setString(1, user.getUserId(); rs=ps.executeQuery(); catch (SQLException e) / TODO Auto-generated catch block e.printStackTrace(); 五、实训结果、实训总结 经过这次实训 ,我们收获太
19、多了,不仅仅是知识上的,还有团队配合方面,我们这次实训的目的是已明年考试为主,所以我们的界面没有太炫耀,只有代码,这不影响美观,经过两个星期实训,非常的开心,我们组写完了。经历种种困难终于成功。当中写程序的时候 很多地方都是自己的薄弱地方,不会的 都标记了下来,及时问老师,或者问同学,有时候一个知识点不会,需要半天甚至一天的时候去琢磨,深刻印象的是sql语句,我把数据库原理的书翻了一遍,终于掌握了,经过2周实训,对javaweb了解更深了一步,对JDBC链接数据库熟练程度更好了,在这谢谢老师的帮助,谢谢同学的支持,实训完毕,下次争取做的更好七、指导教师评语八、实训成绩实训指导老师签名: 年 月 日
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1