博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
实战2--应用EL表达式显示投票结果
阅读量:6647 次
发布时间:2019-06-25

本文共 4176 字,大约阅读时间需要 13 分钟。

(1)编写index.jsp页面,用于收集投票信息

<%@ page language="java" pageEncoding="GBK"%><%String path = request.getContextPath();String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";%>              应用EL表达式显示投票结果    
·您最需要哪方面的编程类图书?
基础教程类
实例集锦类
经验技巧类
速查手册类
案例剖析类
 

界面如下:

(2)编写投票功能的Servlet

package com.wuyudong.servlet;import java.io.IOException;import java.io.PrintWriter;import java.util.*;import javax.servlet.ServletContext;import javax.servlet.ServletException;import javax.servlet.http.HttpServlet;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;public class PollServlet extends HttpServlet {    private static final long serialVersionUID = -7264414153802032772L;    /**     * The doPost method of the servlet. 
* * This method is called when a form has its tag value method equals to * post. * * @param request * the request send by the client to the server * @param response * the response send by the server to the client * @throws ServletException * if an error occurred * @throws IOException * if an error occurred */ public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { request.setCharacterEncoding("GBK"); // 设置请求的编码方式 String item = request.getParameter("item"); // 获取投票项 ServletContext servletContext = request.getSession() .getServletContext(); // 获取ServletContext对象该对象在application范围内有效 Map map = null; if (servletContext.getAttribute("pollResult") != null) { map = (Map) servletContext.getAttribute("pollResult"); // 获取投票结果 map.put(item, Integer.parseInt(map.get(item).toString()) + 1); // 将当前的投票项加1 } else { // 初始化一个保存投票信息的Map集合,并将选定投票项的投票数设置为1,其他为0 String[] arr = { "基础教程类", "实例集锦类", "经验技巧类", "速查手册类", "案例剖析类" }; map = new HashMap(); for (int i = 0; i < arr.length; i++) { if (item.equals(arr[i])) { // 判断是否为选定的投票项 map.put(arr[i], 1); } else { map.put(arr[i], 0); } } } servletContext.setAttribute("pollResult", map); // 保存投票结果到ServletContext对象中 response.setCharacterEncoding("GBK"); // 设置响应的编码方式,如果不设置弹出的对话框中的文字将乱码 PrintWriter out = response.getWriter(); out.println(""); }}

(3)编写showResult.jsp页面

<%@ page language="java" pageEncoding="GBK"%>      显示示投票结果页面    
·您最需要哪方面的编程类图书?
基础教程类   (${empty applicationScope.pollResult["基础教程类"]? 0 :applicationScope.pollResult["基础教程类"]})
实例集锦类   (${empty applicationScope.pollResult["实例集锦类"] ? 0 :applicationScope.pollResult["实例集锦类"]})
经验技巧类   (${empty applicationScope.pollResult["经验技巧类"] ? 0 :applicationScope.pollResult["经验技巧类"]})
速查手册类   (${empty applicationScope.pollResult["速查手册类"] ? 0 : applicationScope.pollResult["速查手册类"]})
案例剖析类   (${empty applicationScope.pollResult["案例剖析类"] ? 0 :applicationScope.pollResult["案例剖析类"]})
合计:${applicationScope.pollResult["基础教程类"]+applicationScope.pollResult["实例集锦类"]+applicationScope.pollResult["经验技巧类"]+applicationScope.pollResult["速查手册类"]+applicationScope.pollResult["案例剖析类"]}人投票!
l>

最后运行界面如下:

转载地址:http://mtgvo.baihongyu.com/

你可能感兴趣的文章
思科路由器的密码恢复
查看>>
磁盘管理工具及命令总结
查看>>
spark提交任务:java.net.UnknownHostException: cluster1
查看>>
CentOS7 上学习使用docker 【安装Nginx】
查看>>
设计模式系列-命令模式
查看>>
linux 协议栈 skb操作函数
查看>>
用户控件和内核空间通讯之[netlink上]
查看>>
RESTClient为POST添加参数的方法
查看>>
邮件归档,完善企业信息管理
查看>>
MyEclipse连接MySQL的方法
查看>>
Spring框架 - Spring概述
查看>>
我的友情链接
查看>>
Javascript事件
查看>>
Python(2)——方法和类的声明及Self的解释
查看>>
loadrunner保存随机数到文本
查看>>
【致青春】致“青春”,追梦想
查看>>
__attribute__ ((packed)) 的作用
查看>>
自动化运维专题之puppet课程内容大纲
查看>>
Postfix的一次报错处理
查看>>
工作过程中涉及到的技术回顾(1)
查看>>