在线图片投票系统.doc_第1页
在线图片投票系统.doc_第2页
在线图片投票系统.doc_第3页
在线图片投票系统.doc_第4页
在线图片投票系统.doc_第5页
已阅读5页,还剩21页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

课程设计报告( 2012- 2013 年度第 二 学期)名 称: 软件设计与实践 题 目: 在线图片投票系统 院 系: 计算机系 班 级: 计科1002班 学 号: 201009010223 学生姓名: 温雷 指导教师:软件设计与实践教学组设计周数: 2 成 绩: 日期: 2013 年 7 月 12一、目的与要求目的:通过综合性实验的设计,使学生综合训练自己的需求分析、系统设计、编程、测试等各种能力,积累软件开发的经验,提高学生进行软件开发所需具备的专业素质以及团队协作能力。要求:完成一个网上在线图片投票评选系统的分析、设计、编程、测试工作。二、 主要内容1. 编写一个网上在线图片投票评选系统。 2. 实现自主报名功能,支持自主上传图片;3. 实现投票功能,支持投票结果的柱状百分比显示;4. 实现投票的IP限制5. 实现管理员对用户、图片等的管理功能三、设计正文1、需求规格说明书1.1 需求概述1) 给出软件需求的摘要和简单描述报名管理:可以实现参赛选手的报名参赛,支持自主上传图片。投票管理:支持在线图片投票,且能以柱状图形式显示投票结果。后台管理:支持管理员注册登录,以及对参赛选手的管理和对用户信息的管理。2) 运行环境硬件平台:2.3GHz;1G;软件平台:操作系统:Windows 7;Web服务器:Tomcat 7.0.27;开发工具包:JDK Version 1.7;数据库:MySQL 5.0;浏览器:IE 8.0;分辨率:最佳效果1024768像素。1.2 功能需求在线图片投票系统的流程图1.3数据描述主要数据库的表格1 secret表2 upload表数据字典:账号表:账号,密码上传表:姓名,性别,参赛宣言,图片地址,投票信息1.4性能需求1) 数据精确度本系统数据库字段主要数据类型是int、varchar、在数据精确度上没有太高要求,数据库存储的信息完全可以反应真实数据。2) 时间特性本系统无明确的时间特性,在任何时间任何客户端均可登录.3) 适应性本系统功能简单,适应性较差,增加功能,需要进步修改。1.5运行需求1)。界面主界面报名参赛界面投票界面投票统计页面后台登陆,注册页面后台管理页面2)硬件接口 就本系统而言,只需要在IIS服务器对外发布,数据来源及有关操作也和硬件设备无直接关系,故我认为无需特别硬件接口,理解有误之处敬请老师指正。3)软件接口本系统中,各个页面实现不同的功能,各页面相互调用,实现系统。数据库与系统通过代码实现调。4)故障处理软件产品难免有bug的出现,虽然我们进行了大量的测试工作,但仍可能有未知bug出现。在代码编写中,除了使用 .net验证控件以外,关键语句处利用try-catch处理异常,提高了用户体验。2. 软件设计说明书一、课程设计总结或结论两个星期的设计时间并不算太长.但是在这并不长的两个星期里面却依然学到了不少的东西.在软件方面,了解并掌握了相关软件使用方法及注意事项二、参考文献1 宋雨 赵文清 软件工程 中国电力出版社 2007 2月第一版 2007.022 王珊 萨师煊 数据库系统概论 高等教育出版社 2006年5月第四版 2007.03 郝玉龙 JAVA EE编程技术 清华大学出版社2008.6三、附录(设计流程图、程序、表格、数据等)设计流程图表格、数据在文档中四、程序(主要代码):HOMEPAGE 页面 网上选票系统 h1,h2,h3,h4,h5,h6 display:inline; .test font-size: 40px; color: #FFD700; font-style: italic;.red font-size: 30px; color:#FF0000; font-style:inherit; 网上在线图片投票系统 活动细则 1.对动漫有强烈爱好者都可报名参与比赛! 2.凡是参赛者必须上传一张你认为最美的动漫图片 3.每位参赛者都且仅有一张选票,可投给心目中最美的动漫图片 4.一台电脑只允许投一张票 5.点击下方火影图片立即参与投票 6.点击下方死神图片立即报名参与比赛 7.点击下方海贼图片进入管理员登陆界面 8.活动截止日期2013年7月13日 APPLY页面 参加比赛 h1,h2,h3,h4,h5,h6 display:inline; .red font-size: 60px; color:#FF0000; font-style:inherit;.blue font-size: 60px; color:#0000FF; font-style:inherit;.white font-size: 24px; color:#FFFF00; font-style:inherit; 比赛报名管理 请填写详细信息 点击返回主界面 姓名: 性别: 参赛宣言: 选择你要参赛的图片: APPLYDEAL页面文件上传处理页面 返回 0) out.println(count+个文件上传成功!); com.jspsmart.upload.File myFile =su.getFiles().getFile(0); String myFileName=myFile.getFileName();/获得图片名 String ext= myFile.getFileExt(); /获得图片名的后缀 int file_size=myFile.getSize(); /取得文件的大小 Calendar calendar = Calendar.getInstance(); String filename = String.valueOf(calendar.getTimeInMillis(); saveurl=C:/Users/wenlei/Documents/NetBeansProjects/WebApplication2/web/; saveurl+=url; saveurl+=filename+.+ext; myFile.saveAs(saveurl,su.SAVE_PHYSICAL); String upurl=; int vote=0; upurl+=url; upurl+=filename+.+ext; java.sql.Connection conn=null; java.lang.String strConn; Statement stmt=null; ResultSet rs=null; try Class.forName(com.mysql.jdbc.Driver).newInstance(); conn=java.sql.DriverManager.getConnection(jdbc:mysql:/localhost:3306/work,root,wenlei910205); stmt=conn.createStatement(); String sql=insert into upload(name,sex,content,image,vote) values; sql=sql+(+name+,; sql=sql+sex+,; sql=sql+content+,; sql=sql+upurl+,; sql=sql+vote+); stmt.executeUpdate(sql); catch(SQLException e) out.println(你已经报过名了,请返回主界面); out.println(); finally if(stmt!=null) stmt.close(); if(conn!=null) conn.close(); else out.println(上传失败,请选择你要上传的图片); % 返回 点击进入投票界面 点击返回主界面 VOTE页面 投票界面 欢迎进入投票系统 参赛信息参考 姓名 性别 参赛宣言 参赛图片 img src= width=60 height=30 alt=/ % catch(SQLException e) out.println(e.toString(); out.println(); finally if(rs!=null) rs.close(); if(stmt!=null) stmt.close(); if(conn!=null) conn.close(); out.println(); try Class.forName(com.mysql.jdbc.Driver).newInstance(); conn=java.sql.DriverManager.getConnection(jdbc:mysql:/localhost:3306/work,root,wenlei910205); stmt=conn.createStatement(); String sql=select * from upload; rs=stmt.executeQuery(sql); while( rs.next() ) String dpurl=rs.getString(image); String name=rs.getString(name); String sex=rs.getString(sex); String content=rs.getString(content); % img src= width=100 height=100 alt=/ input type=button value=我要投票 onclick=window.location.href=VOTEDEAL.jsp?name= %/通过按钮将图片对应的参赛选手姓名传递到VOTEDEAL界面 catch(SQLException e) out.println(e.toString(); out.println(); finally if(rs!=null) rs.close(); if(stmt!=null) stmt.close(); if(conn!=null) conn.close(); % 点击返回主页面 VOTEDEAL页面 投票处理界面 感谢您的参与 点击此处回到主界面 % out.println(); java.sql.Connection conn=null; java.lang.String strConn; Statement stmt=null; ResultSet rs=null; try Class.forName(com.mysql.jdbc.Driver).newInstance(); conn=java.sql.DriverManager.getConnection(jdbc:mysql:/localhost:3306/work,root,wenlei910205); stmt=conn.createStatement(); String sql=update upload set vote=vote+1 where name=+name1+; /根据姓名更新数据库中的投票 stmt.executeUpdate(sql); catch(SQLException e) out.println(e.toString(); out.println(); finally if(stmt!=null) stmt.close(); if(conn!=null) conn.close(); else out.println(对不起,您的操作不合法,请先返回投票系统投票!); % 点击回到投票界面 %java.sql.Connection conn=null; java.lang.String strConn;Statement stmt=null;ResultSet rs=null;tryClass.forName(com.mysql.jdbc.Driver).newInstance(); conn=java.sql.DriverManager.getConnection(jdbc:mysql:/localhost:3306/work,root,wenlei910205); stmt=conn.createStatement();String sql=select name,vote from upload;rs=stmt.executeQuery(sql);int j=0;String row=new String100; /定义一个字符数组用来存放参赛选手的名字int data1=new int100; /定义一个整型数组用来投票while( rs.next() ) String name=rs.getString(name);rowj=name; /将数据库中存放的姓名存放到数组中int vote=rs.getInt(vote);data1j=vote; /将数据库中存放的投票存放到数组中j+; /统计数据库中列表的行数 String rowKeys=new Stringj;/重新定义一个数组,数

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论