《WEB应用与开发》在线投票系统___课程设计报告

HUNAN  CITY  UNIVERSITY     
WEB应用与开发课程设计
报  告
设计题目      在线投票系统     
专    业  信息管理与信息系统   
学生姓名      XXXX        
班级学号    XXXXX       
分组成员 XXXXXXXXXXXXXXXXXXXXXXX   
指导教师    XXXXXXXXXXXXXX       
2012 年06月08日
《WEB应用与开发》课程设计报告
XX
一、设计时间
2012年6月 04日-----6月08日
总的设计时间为1周, 第17周。具体安排如下:
1、分析设计准备阶段(第17周周一至周二)
2、编程调试阶段(第17周周三至第17周周四)
3、书写设计报告和书写说明书阶段(第17周周五)
4、考核阶段(第17周周五)
二、设计地点
信息科学与工程学院机房(新校区510机房)
三、设计目的
通过对一些实际问题的软件设计,,巩固学习java基础知识方面的基本算法,进一步熟悉基本概念。使学生能将课本的理论知识应用于实践,运用所用学的JSP语言知识编制出较为实用的小系统,培养学生查阅资料的习惯,提高学生独立思考和解决问题的能力。
四、设计小组成员
    XXXXXXXXXXXXXXXXXXXXXX
五、指导老师
  XXXXXXXXXXXXXXXXXX
六、设计课题
    在线投票系统   
七、基本思路及关键问题的解决方法
1、基本思路
本系统是一个简单的投票系统,主要提供以下功能:系统首页上显示所有投票选项的列表,用户可以通过选中某个选项并点击“投票”按钮进行投票操作。另外,还提供查看投票详细信息的超链接,用户点击后可在另一页面上看到各个投票选项目前的投票情况,主要包括各选项所得的票数、占总票数的百分比等信息,并且以柱形图显示各选项的得票率,可以让用户从直观上看到各项的得票情况
2、关键问题
如何实现数据库中的数据调入投票系统的jsp页面中以及把用户在投票系统中的投票结果保存到数据库中。
3、解决方法
  我们通过加载数据库驱动使access数据库能够与myeclipse中的在线投票系统相连接,从而在doVote.jsp页面中能够从数据库中访问数据库中的数据,也能够在用户投票后对数据库中的数据进行修改。
算法及流程图
算法:首先用户通过在投票首页选择投票功能或者查看结果功能,转入投票页面,然后经过投票处理页面对投票数据进行修改,结果在显示页面显示投票结果。
                                                      否
                                    是
 
九、调试过程中出现的问题及相应解决办法
一、加载数据库驱动时,导入Jar包出错
解决方法
通过把sqljdbc.jar包重新放到项目WEBRoot\WEB-INF\lib文件夹下;右键项目名称>Build Path>Configure Build Path\,重新加载数据库驱动。
二、数据库配置时提示异常:“到主机 的 TCP/IP 连接失败。”
解决方法
可能时因为数据库TCP/IP服务没有开启,重新开启。开启过程:打开 \Microsoft SQL Serv
er 2005\配置工具\目录下的SQL Server Configuration Manager,选择mssqlserver协议, 然后右边窗口有个tcp/ip协议,双击进入,设置成如下界面,保存,重启SQL SERVER服务即可。
十、课程设计心得体会
课程设计,我明白了要想学习好一门课程,一定要理论与实践相结合,Web技术更是如此。要在不同的浏览器上做调试实验,解决兼容性问题。在很多的时候总是感觉捉襟见肘。Web技术是计算机方面的重点实践应用课程,所以课程设计在我看来不仅仅是一个知识的巩固,还是一个让我们提高动手能力的途径。
通过这次课程设计,我收获的不仅仅是课程上的知识得到实际应用,还有编程的基本操作。使我对所学专业知识得到了充分的应用,锻炼了我发现问题,分析、思考问题、解决问题的能力,使我的实际动手操作能力有所提高,而不仅仅是局限于书本上的知识,对今后的工作学习都大有益处。
(本人有完整的项目需要的话发邮件给我****************)
十一、源程序
1)数据表的设计
  本系统设计了两张表,表tb-temp保存投票用用户信息,表tb-vote保存投票选项信息。
                      表tb-temp
字段名
数据类型
字段大小
是否为主键
Id
Int
4
Voteip
Char
20
Votemsel
Bigint
8
Votetime
Char
50
                    表tb-vote
字段名
数据类型
字段大小
是否为主键
Id
Smallint
2
Vote_title
Char
50
Vote_num
Int
4
Vote_order
Smallint
2
2)值javabean的设计
建一个值JavaBean用来封装存储表tb-temp中的投票选项信息,代码如下:
q.valuebean;
public class VoteSingle {
    private String id;  //存储选项ID
    private String title;//存储选项标题
    private String num;//存储选项所得票数
    private String order;//存储选项的排列序号
    public String getId() {
        return id;
    }
    public void setId(String id) {
        this.id = id;
    }
    public String getNum() {
        return num;
    }
    public void setNum(String num) {
        this.num = num;
    }
    public String getOrder() {
        return order;
    }
    public void setOrder(String order) {
        der = order;
    }
    public String getTitle() {
        return title;
    }
    public void setTitle(String title) {
        this.title = title;
    }
}
同样建另一个值JavaBean用来封装存储表tb-vote中的信息:
q.valuebean;
public class TempSingle {
    private String id;//存储投票用户ID
    private String voteIp;// 存储投票用户IP
    private long voteMSEL;//存储毫秒数
    private String voteTime;//存储yyyy-MM-dd HH:mm:ss形式的时间
    public long getVoteMSEL() {
        return voteMSEL;
    }
    public void setVoteMSEL(long voteMSEL) {
        this.voteMSEL = voteMSEL;
    }
    public String getVoteTime() {
        return voteTime;
    }
    public void setVoteTime(String voteTime) {
        this.voteTime = voteTime;
    }
    public String getId() {
        return id;
    }
    public void setId(String id) {
        this.id = id;
    }
    public String getVoteIp() {
        return voteIp;
    }
    public void setVoteIp(String voteIp) {
        this.voteIp = voteIp;
    }
}
3)数据库操作类的编写
对于查看投票内容,参与投票和显示结果的操作,都涉及了数据库的操作。这些操作在一个DB类中实现,具体代码入下:定义属性及构造方法
q.toolbean;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.Statement;
import java.sql.ResultSet;
import java.util.ArrayList;
import java.util.List;
q.valuebean.TempSingle;
q.valuebean.VoteSingle;
public class DB {
    private String className;//存储数据库驱动类路径
    private String url;//存储数据库URL
    private String username;//存储登陆数据库的用户名
    private String password;//存储登陆数据库的密码
    private Connection con;//声明一个Connection对象
    private Statement stm;//声明一个Statement对象用来执行SQL语句
    private ResultSet rs;//声明一个ResultSet对象用来存储结果集
    public DB() {                    //通过构造方法为属性赋值
        className = "org.apache.derby.jdbc.ClientDriver";
        url = "jdbc:derby://localhost:1527/myeclipse";
        username = "classiccars";

本文发布于:2024-09-21 03:17:45,感谢您对本站的认可!

本文链接:https://www.17tex.com/tex/3/94598.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:投票   数据库   设计   选项   应用   结果   用户
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2024 Comsenz Inc.Powered by © 易纺专利技术学习网 豫ICP备2022007602号 豫公网安备41160202000603 站长QQ:729038198 关于我们 投诉建议