javaweb 投票系统

最近做了一个简单的投票系统,来分享一下
1 先来看一下目录
javaweb 投票系统_第1张图片
2 效果图是这样的
首页,对一次演讲进行简单的评分
javaweb 投票系统_第2张图片
如果选项不完整,或者是没有选项,就会提示选项不完整,并且点击按钮进入选项页面
javaweb 投票系统_第3张图片
如果选项完整就会进入图像类
javaweb 投票系统_第4张图片
然后可以查看本次的总结果,是过还是不过
javaweb 投票系统_第5张图片
以后就是这个小程序的总体结果图
2 接下来,分享代码

2.1 主页面

<%@ page import="java.util.UUID" %>
<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>




Insert title here




请为本次演讲评分

1 素材内容是否吸引

吸引
不够吸引

2 语调音量是否洪亮

洪亮
不够洪亮

3 是否有感情色彩


不太明显

2.2 选项不完整提示页面

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>




Insert title here


	

您的选项不完整,请点击下方按钮,重新选择

2.3 图像页面

<%@page import="com.servlet.Barchart1"%>
<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>




Insert title here


	<%
		String fileName=Barchart1.getBarchart(session);
		System.out.println(fileName);
	%>
	
	  

3 接下来是配置文件



  统计
  
    index.html
    index.htm
    index.jsp
    default.html
    default.htm
    default.jsp
  
  
    DisplayChart
    org.jfree.chart.servlet.DisplayChart
  
  
    DisplayChart
    /DisplayChart
  
  
    
    Damo1Servlet
    Damo1Servlet
    com.servlet.Damo1Servlet
  
  
    Damo1Servlet
    /Damo1Servlet
  
  
    
    Damo2Servlet
    Damo2Servlet
    com.servlet.Damo2Servlet
  
  
    Damo2Servlet
    /Damo2Servlet
  

4 servlet类

package com.servlet;

import java.io.IOException;
import java.io.PrintWriter;
import java.util.ArrayList;
import java.util.List;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import com.sun.org.apache.xpath.internal.operations.And;

/**
 * 拿到前台数据
 */
public class Damo1Servlet extends HttpServlet {
	// 创建一个集合,用来存储前台数据
	static int sum;
	static int num;

	static int sum1;
	static int num1;
	static int sum2;
	static int num2;
	List arrays1 = new ArrayList();

	protected void doGet(HttpServletRequest request, HttpServletResponse response)
			throws ServletException, IOException {
		String tokens = request.getParameter("name");
		System.out.println(tokens);
		request.setCharacterEncoding("UTF-8");
		response.setCharacterEncoding("UTF-8");
		PrintWriter out = response.getWriter();
		response.setHeader("content-type", "text/html;charset=UTF-8");
		// 模块1
		String name = request.getParameter("sex");
		// 模块2
		String name1 = request.getParameter("sound");
		// 模块3
		String name2 = request.getParameter("love");
		if (name == null || name1 == null || name2 == null) {
			response.sendRedirect("damo.jsp");
		} else {
			if (name.equalsIgnoreCase("one")) {
				sum++;
			} else if (name.equalsIgnoreCase("two")) {
				num++;
			}

			if (name1.equalsIgnoreCase("one1")) {
				sum1++;
			} else if (name1.equalsIgnoreCase("two1")) {
				num1++;
			}

			if (name2.equalsIgnoreCase("one2")) {
				sum2++;
			} else if (name2.equalsIgnoreCase("two2")) {
				num2++;
			}
			/*
			 * 2、重定向:response.sendRedirect("success.jsp");
			 * 重定向一般是为了防止用户提交完数据后点浏览器刷新或点后退之后产生重复提交
			 */
			response.sendRedirect("login2.jsp");
		}
	}
	protected void doPost(HttpServletRequest request, HttpServletResponse response)
			throws ServletException, IOException {
		doGet(request, response);
	}
}

4 生成图表类。就是将数据转化为柱状图

package com.servlet;

import java.io.IOException;

import javax.servlet.http.HttpSession;

import org.jfree.chart.ChartFactory;
import org.jfree.chart.JFreeChart;
import org.jfree.chart.plot.PlotOrientation;
import org.jfree.chart.servlet.ServletUtilities;
import org.jfree.data.category.DefaultCategoryDataset;

public class Barchart1 extends Damo1Servlet{
	
	public static String getBarchart(HttpSession session) throws Exception {
		DefaultCategoryDataset dataset=new DefaultCategoryDataset();
		 System.out.println(sum);
         System.out.println(num);
		 dataset.addValue(sum, "素材内容", "吸引");
         dataset.addValue(num, "素材内容", "不够吸引");
         
         dataset.addValue(sum1, "语调音量", "洪亮");
         dataset.addValue(num1, "语调音量", "不够洪亮");
         dataset.addValue(sum2, "感情色彩", "有");
         dataset.addValue(num2, "感情色彩", "不太明显");
       
         JFreeChart chart = ChartFactory.createBarChart3D(
	                 "本次演讲结果图", // 图表标题
                "评分项目", // 文件夹轴的显示标签
                "成绩", // 数值轴的显示标签
                dataset, // 数据集
                PlotOrientation.VERTICAL, // 图表方向:水平、垂直
                true,           // 是否显示图例(对于简单的柱状图必须是false)
                true,          // 是否生成工具
                true           // 是否生成URL链接
                );
        
			String fileName =ServletUtilities.saveChartAsPNG(chart, 700, 500, null,session);
			 return fileName;
	}
}

还有两个类,结构都是和生成图标类一样,包括一个js页面,结构都一样,及不粘贴了

你可能感兴趣的:(javaWeb)