《实验报告管理系统报告(共39页).doc》由会员分享,可在线阅读,更多相关《实验报告管理系统报告(共39页).doc(39页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、精选优质文档-倾情为你奉上软件项目设计报告实验报告管理系统所在班级12计卓小组成员 江灵瞳 印海平 钱晨晨学院名称信电工程学院专业名称计算机科学与技术指导教师胡局新起止日期2014.12.16-2015.1.152015年1月15日目 录专心-专注-专业1 绪论1.1开发背景 实验教学是学生技能培养的重要环节之一,学生实验报告的质量在一定程度上反映了实验教学的质量,实验报告管理水平也反映了实验教学管理水平。目前,大部分学校所提交的实验报告大多还停留在以纸为介质的方式上,这将严重制约着实验教学的开展。首先,很多课程的实验结果在纸质实验报告中不能表现或不能完全表现,其次纸质实验报告的批改和分析也是
2、实验授课老师的一个很重负担,如何提高学生实验报告的表象能力,提高教师批改实验报告的效率并及时发现和纠正实验报告中存在的问题是许多课程实验授课教师所面对的一个难题。1.2 本次设计完成的工作老师登录该系统可以上传、下载实验报告、查看学生做的实验报告并给学生打分、老师可以查看实验验课程、实验课程列表、查看实验提交情况等。学生登录该系统可以上传、下载实验报告、查看实验课程和实验课程列表。1.3 任务分工组织结构:为了完成学生信息管理系统的项目开发,班级组成了一个项目团队,人员分工:为了明确项目团队中每个人的任务分工,现制定人员分工,如下表2.1所示:表2.1 人员分工 成员 角色 负责的模块内容A
3、江灵瞳学生的上传,下载,学生查看实验课程,查看实验列表B 印海平老师的上传,下载,和老师填写分数,数据库设计C 钱晨晨老师查看实验课程,查看实验列表,查看实验上交情况,登录1.4 任务 我们三个人各自分工完成自己的模块内容,首先,江灵瞳构造整个系统的框架,然后印海平设计数据库,在我们一起先设计前台界面,之后我们就各自实现各自模块的功能。2 系统分析2.1需求分析1)实验课程设置,设置课程编号、课程名、时间、次数、老师编号、老师名、实验班级;2)实验列表设置,设置实验编号、实验名、班级、学生学号、学生名、老师名、实验路径、提交状态、分数;3)树型类别设置,设置编号、名字、路径、学生名、老师名、树
4、的状态。2.2可行性分析2.2.1引言编写目的:背景:徐州工程学院是一所培养应用型人才的普通高等学院。为了完善管理学校实验报告太多没有地方保存了,经决定开发实验报告管理系统。2.2.2可行性研究的前提要求:实验报告系统必须提供学生信息和教师信息的基础设置;提供强大的条件搜索功能个实验课程查询、实验列表出现等管理功能;可以分不同权限、不同用户对该系统进行操作。另外,该系统还必须保证数据的安全性、完整性和准确性。目标:实验报告管理系统的目标是实现学生的纸质的实验报告太多没有地方长期保存,这样用一个系统可以将一个课程所有学生的实验报告进行管理方便存放。条件、假定和限制:时间的限制,我们必须在两周的时
5、间里完成项目,在这期间系统分析员需要整理好分析结果,分配各组员的任务,每天需要人员跟踪记录整理文档。程序开发人员须在5天的时间里进行系统设计、程序编码、系统测试、程序调试。期间,还包括一个双休日假期。2.2.3结论根据上面的分析,在技术上不会存在什么问题,因此项目延期的可能性很小。只要在分配的时间里都能顺利地完成任务,再加上团队的凝聚力齐心协力,相信在这两周内会获得一个满意的结果。 2.3 用例图图2.1 用例图3 系统设计与实现3.1系统目标根据需求分析的描述以及与组建成员的沟通,现制定系统实现目标如下:a.界面设计简洁、友好、美观大方。b.操作简单、快捷方便。c.数据存储安全、可靠。d.信
6、息分类清晰、准确。e.强大的查询功能,保证数据查询的灵活性。f.为管理员提供真实的数据信息。g.对用户输入的数据,系统进行严格的数据检查,尽可能排除认为的错误。3.2系统功能结构图3.1 系统功能结构3.3功能流程及工作流程学生模块:a.查看实验课程系统操作人员打开学生模块主界面,输入相关的信息(学号、密码)进入模块,点击学年按钮就可以看到所需要的信息。b.查看实验列表系统操作人员打开学生模块主界面,输入相关信息进入模块,点击课程就可以看到所要的信息。c.下载实验报告模板当该学生进入自己的界面时,找到要做实验报告的课程,点击下载按钮。d.上传实验报告当学生做完实验报告后,进入系统,点击上传按钮
7、。教师模块:a.查看实验课程系统操作人员打开学生模块主界面,输入相关的信息(工号、密码)进入模块,点击学年按钮就可以看到所需要的信息。b.查看实验列表系统操作人员打开老师模块主界面,输入相关信息进入模块,点击课程就可以看到所要的信息c.查看提交情况教师进入教师界面,点击自己教的课程,点击查看按钮。d.上传实验报告模板当该老师进入自己的界面时,找到要做实验报告的课程的实验名称,点击上传按钮。e.下载学生实验当该老师进入自己的界面时,找到实验列表详情,点击下载按钮。f.打分当该老师进入自己的界面时,下载学生的实验报告看完后,在实验列表详情中点击打分按钮。3.4系统流程图图3.2 系统流程图3.5构
8、建开发环境a.操作系统:windows 7或XPbjava开发包:JDK1.6c数据库:MY SQLd.分辨率:最佳效果为1024*768像素3.7文件夹组织结构图3.7 文件夹组织结构3.8 学生模块的实现package com.xzit.entity;public class Experclass private int Eid;private String courseID;private String courseName;private String courseTime;private String coursePeriod;/课程学时private int experimentN
9、um;private String teacherName;private String className;public Experclass() super();public Experclass(int eid, String courseID, String courseName,String courseTime, int experimentNum, String teacherName,String className) super();Eid = eid;this.courseID = courseID;this.courseName = courseName;this.cou
10、rseTime = courseTime;this.experimentNum = experimentNum;this.teacherName = teacherName;this.className = className;public Experclass(int eid, String courseID, String courseName,String courseTime, String coursePeriod, int experimentNum,String teacherName, String className) super();Eid = eid;this.cours
11、eID = courseID;this.courseName = courseName;this.courseTime = courseTime;this.coursePeriod = coursePeriod;this.experimentNum = experimentNum;this.teacherName = teacherName;this.className = className;public String getCoursePeriod() return coursePeriod;public void setCoursePeriod(String coursePeriod)
12、this.coursePeriod = coursePeriod;public String getCourseID() return courseID;public void setCourseID(String courseID) this.courseID = courseID;public String getCourseName() return courseName;public void setCourseName(String courseName) this.courseName = courseName;public String getCourseTime() retur
13、n courseTime;public void setCourseTime(String courseTime) this.courseTime = courseTime;public int getExperimentNum() return experimentNum;public void setExperimentNum(int experimentNum) this.experimentNum = experimentNum;public String getTeacherName() return teacherName;public void setTeacherName(St
14、ring teacherName) this.teacherName = teacherName;public String getClassName() return className;public void setClassName(String className) this.className = className;package com.xzit.dao.impl;import java.sql.Connection;import java.sql.PreparedStatement;import java.sql.ResultSet;import java.util.Array
15、List;import java.util.HashMap;import java.util.List;import java.util.Map;import org.apache.struts2.ServletActionContext;import com.xzit.dao.ExperclassDao;import com.xzit.entity.ExperContent;import com.xzit.entity.Experclass;import com.xzit.util.DBConnection;import com.xzit.util.DataGrid;public class
16、 ExperclassDaoimpl extends BaseDao implements ExperclassDao private String CourseTime;public ExperclassDaoimpl() throws Exception / TODO Auto-generated constructor stubprivate Connection conn=new DBConnection().getConn();private PreparedStatement strat=null;public DataGridMap experclass(String cours
17、etime)throws Exception DataGridMap dg = new DataGridMap(); /分页信息String _page = ServletActionContext.getRequest().getParameter(page);int page = Integer.parseInt(_page=null?1:_page);String _rows = ServletActionContext.getRequest().getParameter(rows);int rows = Integer.parseInt(_rows=null?20:_rows); St
18、ring sql=select * from experclasstable where CourseTime=+coursetime+ and TeacherID=+ServletActionContext.getRequest().getSession().getAttribute(TeaId)+; /String sql = select CourseID,CourseName,CourseTime,CoursePeriod,ExperimentNum,TeacherName,ClassName from experclasstable where CourseTime=+courseT
19、ime+ and ClassName=+/ServletActionContext.getRequest().getSession().getAttribute(userclassname)+;System.out.println(=sql=+sql);ListMap datamap = super.listMapList(sql, page,rows);dg.setRows(datamap);String countSQL = select count(*) from experclasstable where CourseTime=+coursetime+ and TeacherID=+S
20、ervletActionContext.getRequest().getSession().getAttribute(TeaId)+;dg.setTotal(super.count(countSQL);return dg; public DataGridMap stuexperclass(String courseTime) throws Exception / TODO Auto-generated method stubDataGridMap dg = new DataGridMap(); /分页信息String _page = ServletActionContext.getReques
21、t().getParameter(page);int page = Integer.parseInt(_page=null?1:_page);String _rows = ServletActionContext.getRequest().getParameter(rows);int rows = Integer.parseInt(_rows=null?20:_rows);/String sql = select CourseID,CourseName,ExperimentNum,TeacherName from experclasstable where CourseTime=2014年-2
22、015年 and ClassName=12计卓;String sql = select CourseID,CourseName,CourseTime,CoursePeriod,ExperimentNum,TeacherName,ClassName from experclasstable where CourseTime=+courseTime+ and ClassName=+ServletActionContext.getRequest().getSession().getAttribute(userclassname)+;ListMap datamap = super.listMapLis
23、t(sql, page,rows);dg.setRows(datamap);String countSQL = select count(*) from experclasstable where CourseTime=+courseTime+ and ClassName=+ServletActionContext.getRequest().getSession().getAttribute(userclassname)+;dg.setTotal(super.count(countSQL);return dg;public DataGridMap stuexperContentlist(Str
24、ing courseId) throws Exception / TODO Auto-generated method stubDataGridMap dg = new DataGridMap();/分页信息String _page = ServletActionContext.getRequest().getParameter(page);int page = Integer.parseInt(_page=null?1:_page);String _rows = ServletActionContext.getRequest().getParameter(rows);int rows = I
25、nteger.parseInt(_rows=null?20:_rows);/String sql = select CourseID,CourseName,ExperimentNum,TeacherName from experclasstable where CourseTime=2014年-2015年 and ClassName=12计卓;String sql = select t1.ExperimentID,t1.ExperimentName,ExperimentPeriod,t1.TeacherName,t2.Status,t2.upfileDate,t1.ExperimentCont
26、ent from expercontenttable as t1 join expertablesubmit as t2 on t1.ExperimentID=t2.ExperimentID where t1.CourseID=+courseId+ and StudentID=+ServletActionContext.getRequest().getSession().getAttribute(userId);ListMap datamap = super.listMapList(sql, page,rows);dg.setRows(datamap);String countSQL = se
27、lect count(*) from expercontenttable as t1 join expertablesubmit as t2 on t1.ExperimentID=t2.ExperimentID where t1.CourseID=+courseId+ and StudentID=+ServletActionContext.getRequest().getSession().getAttribute(userId);dg.setTotal(super.count(countSQL);return dg;public ExperContent queryExperContent(
28、String experimentID) throws Exception / TODO Auto-generated method stubString sql = select t1.* from expercontenttable as t1 join expertablesubmit as t2 on t1.CourseID=t2.CourseID where t1.ExperimentID=+experimentID+ and StudentID=+ServletActionContext.getRequest().getSession().getAttribute(userId)+
29、;System.out.println(sql);strat=conn.prepareStatement(sql); ResultSet rs=strat.executeQuery(); ExperContent content=null; if(rs.next() content=new ExperContent(); content.setExperimentID(rs.getString(ExperimentID); content.setExperimentName(rs.getString(ExperimentName); content.setExperimentContent(r
30、s.getString(ExperimentContent); content.setExperimentPeriod(rs.getInt(ExperimentPeriod); content.setTeacherName(rs.getString(TeacherName); /content.setTempletfile(rs.getString(Templetfile); content.setTempletfile(upload/+rs.getString(Templetfile).replace(, /); return content;public DataGridMap getex
31、perlist(String courseId) throws Exception / TODO Auto-generated method stubDataGridMap dg = new DataGridMap();/分页信息String _page = ServletActionContext.getRequest().getParameter(page);int page = Integer.parseInt(_page=null?1:_page);String _rows = ServletActionContext.getRequest().getParameter(rows);i
32、nt rows = Integer.parseInt(_rows=null?20:_rows);/String sql = select CourseID,CourseName,ExperimentNum,TeacherName from experclasstable where CourseTime=2014年-2015年 and ClassName=12计卓;String sql = select * from expercontenttable where CourseID=+courseId+;ListMap datamap = super.listMapList(sql, page
33、,rows);dg.setRows(datamap);String countSQL = select count(*) from expercontenttable where CourseID=+courseId+;dg.setTotal(super.count(countSQL);return dg;public String getCourseTime() return CourseTime;public void setCourseTime(String courseTime) CourseTime = courseTime;package com.xzit.entity;publi
34、c class Exper private String ExperimentID;private String ExperimentName;private String ClassName;private String StudentID;private String StudentName;private String TeacherID;private String TeacherName;private String FileName;private String FileRoad;private String Status;private String UpfileDate;pri
35、vate String Testscore;public Exper() super();public Exper(String experimentID, String experimentName,String studentName, String teacherName, String fileRoad,String status) super();ExperimentID = experimentID;ExperimentName = experimentName;StudentName = studentName;TeacherName = teacherName;FileRoad
36、 = fileRoad;Status = status;public Exper(String experimentID, String experimentName, String className,String studentID, String studentName, String teacherID,String teacherName, String fileName, String fileRoad,String status, String upfileDate, String testscore) super();ExperimentID = experimentID;Ex
37、perimentName = experimentName;ClassName = className;StudentID = studentID;StudentName = studentName;TeacherID = teacherID;TeacherName = teacherName;FileName = fileName;FileRoad = fileRoad;Status = status;UpfileDate = upfileDate;Testscore = testscore;public String getClassName() return ClassName;publ
38、ic void setClassName(String className) ClassName = className;public String getStudentID() return StudentID;public void setStudentID(String studentID) StudentID = studentID;public String getTeacherID() return TeacherID;public void setTeacherID(String teacherID) TeacherID = teacherID;public String get
39、FileName() return FileName;public void setFileName(String fileName) FileName = fileName;public String getUpfileDate() return UpfileDate;public void setUpfileDate(String upfileDate) UpfileDate = upfileDate;public String getTestscore() return Testscore;public void setTestscore(String testscore) Testsc
40、ore = testscore;public String getExperimentID() return ExperimentID;public void setExperimentID(String experimentID) ExperimentID = experimentID;public String getExperimentName() return ExperimentName;public void setExperimentName(String experimentName) ExperimentName = experimentName;public String
41、getStudentName() return StudentName;public void setStudentName(String studentName) StudentName = studentName;public String getTeacherName() return TeacherName;public void setTeacherName(String teacherName) TeacherName = teacherName;public String getFileRoad() return FileRoad;public void setFileRoad(String fileRoad) FileRoad = fileRoad;public String getStatus() return Status;public void setStatus(String status) Status = status;package com.xzit.dao.impl;import java.sql.Connection;import java.sq
限制150内