投票功能+代码+java_基于jsp的投票系统-JavaEE实现投票系统 - java项目源码

基于jsp+servlet+pojo+mysql实现一个javaee/javaweb的投票系统, 该项目可用各类java课程设计大作业中, 投票系统的系统架构分为前后台两部分, 最终实现在线上进行投票系统各项功能,实现了诸如用户管理, 登录注册, 权限管理等功能, 并实现对各类投票系统相关的实体进行管理。

该投票系统为一个采用mvc设计模式进行开发B/S架构项目,并采用分层架构对项目进行架构, 分为pojo+action+service, 其中pojo表明该系统的各类数据库表对应的实体, 在对投票系统进行详细的需求分析后与数据库设计后, 设计实现了如下模块, 即登录模块,权限管理模块, 用户管理模块,投票系统信息管理模块等。并通过java抽象类对其实现

开发环境

java环境: Jdk1.8

Ide: Eclipse EE或者jetbrains Idea

数据库: mysql5.6以上

依赖框架:javascript, css, jsp, servlet, filter

系统需求分析与流程图

一般而言, 此类的javaweb课程设计大作业都比较简单, 主要目的在于掌握基础的web开发知识, 所以在实现该投票系统的课程设计的时候, 需要首先收集其他的投票系统产品分析, 主要精力用于完成数据库表的设计, 以及基于mvc模式进行代码编写, 页面可以简单的利用bootstrap进行搭建, 进而完成投票系统各个模块的开发

数据库课程设计

数据库设计是整个投票系统系统能否正常运转的核心, 合理的数据库设计直接影响到投票系统是否能够正常运行, 本系统采用mysql数据库作为数据存储, 引擎采用innoddb

系统演示视频

运行截图

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
package com.frog.vote.servlet.front; import java.io.IOException; import java.sql.Timestamp; import java.util.ArrayList; import java.util.List; import javax.servlet.ServletContext; import javax.servlet.ServletException; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import com.frog.vote.bean.UserBean; import com.frog.vote.cons.Const; import com.frog.vote.dao.entity.Vote; import com.frog.vote.factory.ServiceFactory; public class VoteServlet extends HttpServlet { @Override protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { doPost(req, resp); } @Override protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { req.setCharacterEncoding("gbk"); resp.setContentType("text/html;charset=gbk"); // 先取出操作参数 String action = req.getParameter("action"); ServletContext application = getServletContext(); // 显示的列表 if ("show".equals(action)) { // 调用service层方法得到所有的 String temp = req.getParameter("page"); int page = 1; if (temp != null) { try { page = Integer.parseInt(temp); } catch (NumberFormatException e) { e.printStackTrace(); } } UserBean ub = (UserBean)req.getSession().getAttribute(Const.USER); int uid = ub.getId(); req.setAttribute("page", ServiceFactory .getVoteService().listUserPage(page,uid)); application.getRequestDispatcher("/WEB-INF/front/list.jsp") .forward(req, resp); return; } else if ("save".equals(action) || "update".equals(action)) { String sid = req.getParameter("id"); String[] answers = req.getParameterValues("choice"); List<Integer> list = new ArrayList<Integer>(); int temp; for (String answer : answers) { temp = Integer.parseInt(answer); list.add(temp); } int tid = Integer.parseInt(sid); UserBean ub = (UserBean)req.getSession().getAttribute(Const.USER); Vote vote = new Vote(); vote.setUid(ub.getId()); vote.setTid(tid); vote.setVoteTime(new Timestamp(System.currentTimeMillis())); vote.setAnswer(list); vote.setIp(req.getRemoteAddr()); List<String> listErr = null; if ("update".equals(action)) { // flag = ServiceFactory.getVoteService().update(vote); } else { vote.setStatus(Vote.STATUS_ACTIVE); listErr = ServiceFactory.getVoteService().save(vote); } if (listErr==null) { // resp.sendRedirect(req.getContextPath()+"/main?action=welcome"); application.getRequestDispatcher("/WEB-INF/front/success.jsp").forward(req, resp); return; } req.setAttribute("err", listErr); req.getRequestDispatcher("/err.jsp").forward(req, resp); return; } else if ("delete".equals(action)) { String gid = req.getParameter("gid"); int gidNumber = Integer.parseInt(gid); boolean flag = ServiceFactory.getVoteService().delete(gidNumber); if (flag) { req.getRequestDispatcher("/admin/goods?action=list").forward( req, resp); return; } req.getRequestDispatcher("/err.jsp").forward(req, resp); return; } else if ("modify".equals(action)) { String gid = req.getParameter("gid"); int gidNumber = Integer.parseInt(gid); Vote vote = ServiceFactory.getVoteService().getById(gidNumber); req.setAttribute("detai", vote); if (vote != null) { req.getRequestDispatcher("/admin/goods/modify.jsp").forward( req, resp); return; } req.getRequestDispatcher("/err.jsp").forward(req, resp); return; } } }

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值