哈喽,大家好,今天主要给大家带来一个开源项目-投票管理系统
投票管理系统主要有首页,发起投票,管理投票,参与投票,查看投票等功能
首页
为用户提供了一键导航到各个功能模块的便捷途径。
新增投票
用户可以在此轻松创建新的投票活动,设置投票主题、选项等信息。
管理投票
管理员或投票发起人可以在此对已有的投票活动进行全面管理,包括编辑、删除、查看投票结果等操作。
参与投票
用户可以通过简单的操作,选择自己心仪的选项参与投票,表达自己的意见和看法。
查看投票
可以在此查看投票的详细结果,了解各个选项的得票情况,为后续决策提供参考。
代码示例
import java.util.ArrayList; import java.util.List;import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpSession;import org.springframework.http.HttpRequest; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.ModelAttribute; import org.springframework.web.bind.annotation.PathVariable; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMethod; import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.servlet.View; import org.springframework.web.servlet.view.JstlView;import com.wantao.bean.Page; import com.wantao.bean.Vote; import com.wantao.bean.VoteOption; import com.wantao.bean.VoteResult; import com.wantao.daoImpl.VoteDaoImpl; import com.wantao.daoImpl.VoteOptionDaoImpl; import com.wantao.util.ChartUtil; import com.wantao.util.PageUtil;@Controller public class VoteHandler {@RequestMapping(value = "/addVote", method = RequestMethod.POST)public String addVote(int channel, String voteName, String[] voteOptions) {// 只要name属性相同,前后端自动绑定VoteDaoImpl voteDaoImpl = new VoteDaoImpl();VoteOptionDaoImpl voteOptionDaoImpl = new VoteOptionDaoImpl();Vote vote = new Vote();// 创建投票对象vote.setChannelId(channel);// 设置频道idvote.setVoteName(voteName);// 设置投票名称voteDaoImpl.addVote(vote);// 执行增加投票的方法int voteId = voteDaoImpl.findVoteByName(voteName).getVoteId();// 获取投票idfor (String voteoption : voteOptions) {VoteOption voteOption = new VoteOption();// 创建投票选择对象voteOption.setVoteId(voteId);voteOption.setVoteOptionName(voteoption);voteOptionDaoImpl.addVoteOption(voteOption);}return "redirect:/index.jsp";}@RequestMapping(value = "/editorVote", method = RequestMethod.GET)public String editorVote(HttpSession session, @RequestParam(name = "currentPage") int currentPage) {VoteDaoImpl voteDaoImpl = new VoteDaoImpl();VoteOptionDaoImpl voteOptionDaoImpl = new VoteOptionDaoImpl();List voteIds=new ArrayList();Page page=null;int everyPageCount = 10;// 每页记录数int totalCount = voteDaoImpl.findAllVoteCount();// 总记录数if (currentPage ==1) {//第一页创建page对象page = PageUtil.createPage(currentPage, everyPageCount, totalCount);page.setBeginIndex(currentPage);}else {//非第一页直接获取page对象page =(Page) session.getAttribute("page");}page.setCurrentPage(currentPage);page.setHasNextPage(PageUtil.getHasNextPage(currentPage, page.getTotalPage()));page.setHasPrePage(PageUtil.getHasPrePage(currentPage));List<Vote> votes = voteDaoImpl.findAllVote(page);List<VoteResult> voteResults = new ArrayList<VoteResult>();for (Vote vote : votes) {VoteResult voteResult = new VoteResult();List<VoteOption> voteOptions = voteOptionDaoImpl.findVoteOptionByVoteId(vote.getVoteId());voteResult.setVote(vote);voteResult.setVoteOptions(voteOptions);voteResults.add(voteResult);voteIds.add(vote.getVoteId());}session.setAttribute("voteResults", voteResults);session.setAttribute("page", page);session.setAttribute("voteIds", voteIds);return "editorVote";}@RequestMapping(value = "/delete")public String deleteVote(@RequestParam(value = "currentPage") int currentPage, @RequestParam(value = "id") int id) {VoteDaoImpl voteDaoImpl = new VoteDaoImpl();VoteOptionDaoImpl voteOptionDaoImpl = new VoteOptionDaoImpl();voteOptionDaoImpl.deleteVoteOption(id);voteDaoImpl.deleteVote(id);return "redirect:editorVote?currentPage="+currentPage;} }
以上就是系统的大致内容了,感兴趣的同学可以通过连接 下载源码~