




已阅读5页,还剩19页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
软 件 学 院课程设计报告书课程名称 java web 程序设计教程课程设计 设计题目 学生个人成绩管理系统 专业班级 学 号 姓 名 指导教师 2011年 12 月目录1 设计时间:12 设计目的13设计任务14 设计内容14.11需求分析14.12系统功能图24.13数据库设计24.2详细设计34.21各子系统的详细设计34.22抽象数据类型的定义44.2.3运行界面54.2.4主要代码75总结期望19参考文献21成绩评定211 设计时间:2011-12-122011-12-162 设计目的JavaEE课程设计是对所学JavaEE与中间件课程的小结,是提高学生对所学知识综合应用能力的一种方式,是集中实践性环节之一。要求同学们对课程中所学习到的知识综合运用,开发有一定规模的Java Web程序。3设计任务设计一个学生个人成绩管理系统包括以下功能:(1)用户以合法身份登录系统后,才能进行所有操作;用户可以添加、查看、修改和删除自己的成绩信息;计算各课程的平均分。(2)添加学生成绩:学生添加成绩信息(包括学号、姓名、课程名称、成绩);(3)查看学生成绩:查看所有课程的成绩;(4)删除成绩:学生可以删除自己的成绩;(5)计算成绩平均分:计算出所有成绩的平均分4 设计内容4.1概要设计4.11需求分析 成绩管理成为学校教学管理中十分重要又相当复杂的管理工作之一,单纯的采用传统的手工处理已经不符合教育和管理的要求,而计算机具有运算速度快,处理能力强等特点,很自然地进入到这一应用领域中。因此为了保证学校的信息流畅,工作高效,有必要设计一个学生成绩管理系统。这不但能使教务人员从复杂的成绩管理中解脱出来,而且对于推动教学的发展也起到了非常重要的作用。随着学校规模的不断扩大,专业,班级,学生的数量急剧增加,有关学生成绩的各种信息量也成倍增长,而目前许多高校的学生成绩管理仍停留在复杂的人工操作上,重复工作较多,工作量大,效率低,因此,迫切需要开发基于互联网的个人成绩管理系统。此次课程设计为设计一个就是设计一个这样的学生个人成绩管理系统,该系统要求用户以合法身份登录后才能进行所有操作。该用户可以添加、查看、修改和删除自己的学生成绩信息及计算各成绩的平均分。4.1.2系统功能图: 学生个人信息管理系统用户以合法身份登录添加学生成绩查看学生成绩删除学生成绩计算平均成绩修改学生成绩4.1.3数据库设计:在数据库中建立Scores表包括:(字段名称,数据类型,长度,字段描述)。Scores表: 表1-1字段名称数据类型长度字段描述idint4主键,自增长snoint4学号snamevarchar50姓名cnamevarchar50课程名gradeint4成绩 4.2详细设计程序流程图:NY开始用户登录是否成功查看学生成绩删除学生成绩添加学生成绩计算平均成绩结束4.2.1各子系统的详细设计1.登录子系统“index.jsp”用于用户登录,输入用户名和密码登录失败时跳转到“error.jsp”页面,重新输入用户名和密码。登录成功进入“success.jsp”页面,点击相应按钮进行相应操作。2.查询子系统“showAllScore.jsp”用于显示所有成绩信息包括:学号,姓名,课程名,成绩。建立超链接到其他三个子系统的页面。3.删除子系统“delete.jsp”用于删除成绩,输入要删除的学号点击删除。4.添加子系统Add.jsp用于填加成绩,输入要添加的数据,点击添加。5.计算平均成绩子系统 “acc.jsp”用于计算平均成绩,点击进入所对应的servlet进行处理。4.2.2 抽象数据类型的定义所需要导入的包及建立的包表4-1 包定义表包名类名功能com.scores.daoscores .Dao.java增加信息显示信息删除信息平均成绩信息com.scores.domainscores.java成绩属性User.java用户属性com.scores .serviceScores Service.java成绩服务UserService.java用户服务com. scores.servletAcctServlet.java计算平均成绩控制层DeleteServlet.java删除成绩控制层UpdateServlet.java修改成绩控制层LoginServlet.java登录控制层AddServlet.java添加成绩控制层表4-2 页面定义表页面名称作用add.jsp添加页面delete.jsp删除页面update,jsp修改页面error.jsp登陆失败页面,返回登录界面index.jsp用户界面Sava.jsp操作页面ShowAllCost.jsp显示页面success.jsp登陆成功页面,跳转至用户界面acci.jsp计算平均成绩页面4.2.3运行界面登录界面如下 登录成功和失败的页面如下: 增删改查操作的成绩表格:添加后表为:删除掉张思成绩后表格如下:将李四的成绩改为99后表格如下:4.2.4主要代码1.登录的JSP代码: 用户名 密 码 登录失败进入error.jsp页面重新输入用户名和密码,登录成功进入success.jsp页面,进行相关操作。2.SERVLET控制层代码:添加成绩代码:public class AddServlet extends HttpServlet public void doGet(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException ScoreService scoreservice=new ScoreService(); List list=scoreservice.getAddScores(); request.setAttribute(allscores, list); request.getRequestDispatcher(/add.jsp).forward(request, response);删除成绩代码:public class DeleteServlet extends HttpServlet public void doGet(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException ScoreService scoreservice=new ScoreService(); List list=scoreservice.getDeleteScores(); request.setAttribute(allscores, list); request.getRequestDispatcher(/delete.jsp).forward(request, response);修改成绩代码public class UpdateServlet extends HttpServlet public void doGet(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException ScoreService scoreservice=new ScoreService(); List list=scoreservice.getAddScores(); request.setAttribute(allscores, list); request.getRequestDispatcher(/update.jsp).forward(request, response);查询成绩代码:public class ScoreServlet extends HttpServlet public void doGet(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException ScoreService scoreservice=new ScoreService(); List list=scoreservice.getAllScores(); request.setAttribute(allscores, list); request.getRequestDispatcher(/showAllScores.jsp).forward(request, response);计算平均成绩代码:public class ScoreServlet extends HttpServlet public void doGet(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException ScoreService scoreservice=new ScoreService(); List list=scoreservice.getAllScores(); request.setAttribute(allscores, list); request.getRequestDispatcher(/acc.jsp).forward(request, response);3.DAO层代码:DAO类的类名为“ScoreDao”,该类使用JDBC技术实现,用于和数据库交互,进行相关的增、删、改、查操作,它的实现代码如下:public class ScoreDAO private static Score scores;public static List getAllScores()Connection con=DBConnection.getConnection();tryList list=new ArrayList();PreparedStatement ps=con.prepareStatement(select*from scores);ResultSet rs=ps.executeQuery();while(rs.next() Score score=new Score(); score.setSno(rs.getInt(sno); score.setSname(rs.getString(sname);score.setCname(rs.getString(cname); score.setGrade(rs.getInt(grade); list.add(score);mit();return list; catch(SQLException e) e.printStackTrace(); return null;public static List getAddScores() throws SQLExceptionConnection con=DBConnection.getConnection(); tryList list=new ArrayList();PreparedStatement ps=con.prepareStatement(insert into scores(sno,sname,cname,grade)values(?,?,?,?);ResultSet rs=ps.executeQuery();while(rs.next() Score score=new Score(); score.setSno(rs.getInt(sno); score.setSname(rs.getString(sname); score.setCname(rs.getString(cname); score.setGrade(rs.getInt(grade); list.add(score);return list; catch(SQLException e) e.printStackTrace(); return null;public static List getDeleteScores()Connection con=DBConnection.getConnection();tryList list=new ArrayList();PreparedStatement ps=con.prepareStatement(delete*from scores where id=?);ResultSet rs=ps.executeQuery();while(rs.next() Score score=new Score(); score.setSno(rs.getInt(sno); score.setSname(rs.getString(sname); score.setCname(rs.getString(cname); score.setGrade(rs.getInt(grade); list.add( score);return list; catch(SQLException e) e.printStackTrace(); return null;public static List getUpdateScores()Connection con=DBConnection.getConnection();tryList list=new ArrayList();PreparedStatement ps=con.prepareStatement(update*scores set sno=? sname=? cname=? grade=?);ResultSet rs=ps.executeQuery();while(rs.next() Score score=new Score(); score.setSno(rs.getInt(sno); score.setSname(rs.getString(sname); score.setCname(rs.getString(cname); score.setGrade(rs.getInt(grade); list.add(score);return list; catch(SQLException e) e.printStackTrace(); return null;public static List getAccScores()Connection con=DBConnection.getConnection();tryList list=new ArrayList();PreparedStatement ps=con.prepareStatement(select*from scores);ResultSet rs=ps.executeQuery();while(rs.next() Score score=new Score(); score.setSno(rs.getInt(sno); score.setSname(rs.getString(sname); score.setCname(rs.getString(cname); score.setGrade(rs.getInt(grade); list.add(score);return list; catch(SQLException e) e.printStackTrace(); return null;4.SERVICE层代码:public class ScoreService public List getAllScores()ScoreDAO soreDAO=new ScoreDAO(); return ScoreDAO.getAllScores();public List getAddScores()ScoreDAO soreDAO=new ScoreDAO();return ScoreDAO.getAddScores();public List getDeleteScores()ScoreDAO soreDAO=new ScoreDAO(); return ScoreDAO.getDeleteScores();public List getUpdateScores() ScoreDAO soreDAO=new ScoreDAO(); return ScoreDAO.getUpdateScores();public class UserService public static boolean CheckLogin(User user)if(user.getUsername().equals(admain)&user.getPassword().equals(123456)return true;return false;5.实体类代码:Score实体: User实体:public class Score public class User private int sno; private String username;private String sname; private String password; /生成set和get方法private String cname;private int grade;/生成set和get方法6.连接数据库代码:public class DBConnection public static Connection getConnection() final String driverName=com.microsoft.jdbc.sqlserver.SQLServerDriver; final String url=jdbc:microsoft:sqlserver:/localhost:1433;databasename=mydb; try Class.forName(driverName); catch(ClassNotFoundException e) e.printStackTrace(); try Connection con=DriverManager.getConnection(url,sa,sa); con.setAutoCommit(false); System.out.println(con); return con; catch(SQLException e) e.printStackTrace(); return null; 7. JSP页面:showAllScores.jsp: 学号 姓名 课程名 成绩 添加成绩 删除成绩 修改成绩 计算平均成绩 Save.jsp: 学号 姓名 课程名 成绩 增删改查操作jsp页面: 学号 姓名 课程 成绩 配置文件WEB.XML This is the description of my J2EE component This is the display name of my J2EE component LoginServlet com.scores.servlet.LoginServlet This is the description of my J2EE component This is the display name of my J2EE component AddServlet com.scores.servlet.AddServlet This is the description of my J2EE component This is the display name of my J2EE component DeleteServlet com.scores.servlet.DeleteServlet This is the description of my J2EE component This is the display name of my J2EE component ScoreServlet com.scores.servlet.ScoreServlet This is the description of my J2EE component This is the display name of my J2EE component UpdateServlet com.scores.servlet.UpdateServlet This is the description of my J2EE component This is the display name of my J2EE component AccServlet com.scores.servlet.AccServlet LoginServlet /servlet/LoginServlet AddServlet /servlet/AddServlet DeleteServlet /servlet/DeleteServlet ScoreServlet /servlet/ScoreServlet UpdateServlet /servlet/UpdateServlet AccServlet /servlet/AccServlet index.jsp 5 总结与展望经历了一周的javaEE课程设计,我收获了很多,也感悟了很多。第一,在乐趣中学习,在学习中寻找乐趣。学习任何东西时,兴趣是最好的老师,如果你每天只是把写程序当作谋生的手段的话,那样你学习起来也会很枯燥无味,也会学的很累。第二,在实践中体会理论,在理论中理解实践。上课的时候认真听老师讲解,一些概念知识慢慢去理解,课后多做练习,熟能生巧,哪怕是你的记性再好,课后不去强化练习
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 责任临床经验课件
- 2025版电子产品销售代理权转让及售后服务合同
- 2025保安公司专业巡逻外包服务合同
- 2025储油罐租赁合同:智慧储油罐租赁及智能监控系统协议
- 2025崇明危化品运输合同运输工具维护与保养服务范本
- 2025版全新网络安全检测企业员工保密协议与网络安全技术保护合同模板下载
- 2025彩钢装饰工程设计与施工一体化合同样本
- 2025版二手房买卖合同汇编:合同标的、租赁与转租条款解析
- 2025年防护栏新材料研发与应用合作合同
- 2025年度专业保安服务合同标准模板
- 山东省技能大赛青岛选拔赛-世赛选拔项目61样题(健康和社会照护)
- 餐饮加盟协议合同书
- 事业单位招聘综合类必看考点《管理常识》试题解析(2023年)
- T CEC站用低压交流电源系统剩余电流监测装置技术规范
- 办理宽带拆机委托书
- JJG 677-2006光干涉式甲烷测定仪
- 2024建筑工程监理表
- 胸部肿瘤放疗讲课
- 空乘服务语言艺术与播音技巧全套教学课件
- 小米公司物流与供应链管理案例分析课件
- 《工业视觉基础知识》课件
评论
0/150
提交评论