投票系统课程设计

上传人:公**** 文档编号:499050685 上传时间:2024-01-27 格式:DOCX 页数:19 大小:518.80KB
返回 下载 相关 举报
投票系统课程设计_第1页
第1页 / 共19页
投票系统课程设计_第2页
第2页 / 共19页
投票系统课程设计_第3页
第3页 / 共19页
投票系统课程设计_第4页
第4页 / 共19页
投票系统课程设计_第5页
第5页 / 共19页
点击查看更多>>
资源描述

《投票系统课程设计》由会员分享,可在线阅读,更多相关《投票系统课程设计(19页珍藏版)》请在金锄头文库上搜索。

1、投票管理系统课程设计Web应用开发1课程设计题目错误!未定义书签。2课程设计内容13课程设计目的14系统需求分析14.1系统概述14.2系统运行环境24.3功能需求分析25系统总体设计35.1开发与设计的总体思想35.2系统模块结构图35.3系统流程图45.4系统界面设计55.5数据库设计86系统详细设计86.1应用部署图96.2系统关键类设计96.3系统关键页面设计117小结148参考文献15附录:系统使用说明书151课程设计内容本设计开发一个投票管理系统,主要涉及JSP技术和数据库系统两方面的 知识的综合运用,并应用PowerDesigner进行数据库建模。2课程设计目的在已经掌握相关的专

2、业理论知识的基础上,巩固所学知识、增强开发能力、 提高专业素质,促进全面发展。通过计算机应用大型作业这一实践环节,培养 系统综合应用所学系列课程基本理论、基本知识的能力,使所学的理论知识系 统化,培养独立思考、独立分析、独立解决问题的能力。通过作业小组成员的 集体合作,培养合作共事、协同工作的能力,为今后更好地胜任计算机应用的 开发打好扎实的基础。3系统需求分析本系统实现了网络上较为常用的投票、评论功能,为调查、收集、统计各 类用户的意见反馈提供了一个方便易用的网上平台。本系统遵循软件工程标准, 并按照软件工程规定的流程进行项目的开发。3.1系统概述本系统功能比较简单,主要有以下功能:显示页面

3、需要从数据源取出所有 数据显示,供使用者浏览,当用户选择某个选项单击提交按钮时,将完成一次 投票功能。当用户完成一次投票后,不允许再反复投票,如果用户再提交,则 提示“您以投过票,请不要反复投票”。当用户访问时单击查看选项时,可以看 到所有选项的得票数。同时在首页可以查看用户对这次投票的评论,如果访问 者想评论时,可根据系统首页的提示进行注册、对投票进行评论等。管理员用 户可以通过登录进入投票管理系统的管理页面进行修改、删除、增加投票项, 以及注册用户、评论管理等。3.2系统运行环境1. 硬件环境 处理器:500 MHz或更快处理器(推荐1 GHz或更快) 内存:512 MB (推荐1 GB或

4、更高) 硬盘:1GB或更高显卡:VGA或更高分辨率显示器2. 软件环境操作系统:Windows 2000/xp/2003 Web服务器:Tomcat 5.5或以上版本 数据库:Sql server 2005 客户端:IE6.0或以上版本 开发工具:Eclipse、MyEclipse或其它IDE工具 开发语言:JSP、JAVA3.3功能需求分析投票管理系统主要需要实现以下一些基本功能。 投票:用户在投票系统的首页上,可以通过选中每个投票项前面的单选 按钮并单击提交按钮来进行投票。 查看投票情况:用户在投票系统首页上可以通过单击“查看”按钮进行 查看当前最新的投票情况,包括投票项的得票数、得票率等

5、。 查看评论:用户可以通过首页的现实查看最新评论或者通过首页的链接 到评论页面进行查看。 注册用户:用户可以通过首页的链接进行注册。 评论当前投票:已注册的用户可以进行当前投票的评论。未注册的用户 只能查看评论,不能评论。 管理员登陆:用户根据合法的用户名和密码即可登陆到后台管理页面进4系统总体设计在前面对用户需求的分析和研究的过程中,对于本系统中的几个主要的功 能模块大致有了一个抽象的认识。下面通过总体设计,给出投票管理系统的模 块结构、流程描述和用户界面布局。4.1开发与设计的总体思想本系统采用了 J2EE三层架构,分别为表现层、业务逻辑层和数据模型层。 MVC三层体系结构业务规则、数据访

6、问等操作放在中间层处理,客户端不直接 与数据库交互,而是通过控制器与中间层建立连接再由中间层与数据库交互。表现层采用了 JSP,中间层采用了 JDBC封装了对底层数据库的相关操作。 数据库采用Sql server 2005数据库存放数据,4.2系统模块结构图投票管理系统分为前、后台两部分设计,前台主要实现投票、评论、投票 结果的现实以及用户注册、登陆、发布评论等信息。后台主要实现的功能为投 票、评论等信息的管理等。如图1所示。4.3系统流程图投票管理系统的系统流程如图2、图3所示。4.4系统界面设计投票管理系统主页面设计,具体设计效果图如图4所示。图4投票管理系统主页面设计效果图查看投票情况页

7、面设计,具体效果图如图5所示查看评论页面设计,具体效果图如图6所示 管理员后台主页面设计,具体效果图如图7所示图7后台首页4.5数据库设计数据库概念设计注册用户实体包括编号、用户名、密码。评论信息实体包括编号、标题、 内容、时间。每个用户可以有多条评论,即1对多关系。其实体E-R图如 图8所示。物理数据库设计采用sql server 2005数据库,其物理数据库设计如下图9所示。图95系统详细设计基于系统需求分析与系统总体设计的结论,下面按照模块的划分来分别阐述系统的详细设计和实现过程。5.1应用部署图本系统的文件夹组织结构如图10所示。-vot&-西 src+ 出扣其ng + 由 biz +

8、 土北+ Si JRE:com.sun.+ = J2EE 1.4 Libraries+ Si引用的库+-3 WebRoot+ B ME7A-INF+ B WEB-INF 场 add_wcrd5_form. 场 add_wc rd ve. 苫 adminjndex.jsp 苫 adminlogin.jsp all_word5_li5t.j5pKa ba.gif 虞 C55.C55 J* ediivcte.jsp / indexjsp J* left印 J* logoLitjsp 丁 main.jsp mainvote.jsp图105.2系统关键类设计 数据库访问类db/DBConn.java,采

9、用JDBC方法与数据库建立连接,关 键代码如下:public class DBConnprivate String driverStr = com.microsoft.sqlserver.jdbc.SQLServerDriver;private String connStr = jdbc:sqlserver:/localhost:1433; DatabaseName=vote;private Connection conn = null;private String username=sa;private String password=welcome;public DBConn()publi

10、c java.sql.Connection getConn() try Class.forName(driverStr);conn = DriverManager.getConnection(connStr, username, password); catch (Exception e) e.printStackTrace();return this.conn;管理员相关操作类db/DBCtrol.java,其功能为管理员登陆、更新投票选 项、首页显示投票选项等。关键代码如下:获取投票选项方法:public List getVoteList()DBConn dbconn = new DBCo

11、nn();List list = new ArrayList();Connection conn = dbconn.getConn();获取数据库连接String sqltemp = select * from vote order by id DESC; /查询投票选项语句try Statement st = conn.createStatement();ResultSet rs = st.executeQuery(sqltemp);while (rs.next() 读取rs数据集放入list中Vote vote = new Vote();vote.setId(rs.getInt(id);v

12、ote.setLid(rs.getInt(lid);vote.setVcount(rs.getInt(vcount);vote.setVname(rs.getString(vname);list.add(vote); catch (Exception e) return list;5.3系统关键页面设计index.jsp首页关键代码投票方法:%int check= role.getChecks();获取投票选项时多项投票还是单项投票String taction = request.getParameter(action); /获取表单的 action 方法String action = (ta

13、ction = null)?no:taction;/判断表单提交的方法String items = request.getParameter(items);if (check=0 & action.equals(tou)/如果表单提交过来的是tou则 进行投票if (session.getAttribute(times)=null)if(items != null)dbctrol.updataVcountById(items);session.setAttribute(times”,do”);out.print(alert(投票成功,谢谢支持!);history.back(););elseout.print(alert(您没有选择任何投票项目,请返回后重新输 入!);history.back(););elseout.print(alert(您已经投过票,请不要重复投票!);history.back(););%首页显示投票选项代码:%List list = dbctrol.getVoteList(); 获取投票选项内容if(list!= null)for(int i=0;iinput type=radio

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 学术论文 > 其它学术论文

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号