利用servlet转发技术实现统计form表单中字母次数
来源:互联网 发布:淘宝网买苹果手机可靠吗 编辑:程序博客网 时间:2024/06/08 06:22
需求是利用servlet转发技术,实现对html网页中用户输入的内容进行统计,统计每个字母出现的次数,忽略大小写。其中统计功能在一个servlet中,转发功能在另一个servlet中。
1.新建dynamic web project,命名为CounterCharacter
2.在webContent目录中新建index.html文件,设置form表单
<!DOCTYPE html><html><head><meta charset="UTF-8"><title>Insert title here</title></head><body><form action="/CountCharacter/LetterCountServlet" method="post">请输入文章<textarea rows="5" cols="50" name="content"></textarea><input type="submit" value="提交"/></form></body></html>
3.在JavaResource/src目录下新建一个包,命名为servletDemo,在该包中新建一个servlet,命名为LetterCountServlet,主要负责统计用户输入的内容中每个字母出现的次数
package servletDemo;import java.io.IOException;import javax.servlet.RequestDispatcher;import javax.servlet.ServletContext;import javax.servlet.ServletException;import javax.servlet.annotation.WebServlet;import javax.servlet.http.HttpServlet;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;/** * Servlet implementation class LetterCountServlet * 统计用户输入内容中每个字母出现次数 */@WebServlet(asyncSupported = true, urlPatterns = { "/LetterCountServlet" })public class LetterCountServlet extends HttpServlet {private static final long serialVersionUID = 1L; /** * @see HttpServlet#HttpServlet() */ public LetterCountServlet() { super(); // TODO Auto-generated constructor stub }/** * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response) */protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {// TODO Auto-generated method stubSystem.out.println("Servlet works");//获得form表单提交的内容String content = request.getParameter("content");//忽略大小写,把用户输入全部转换成大写content = content.toUpperCase();int[] times = new int[26];for(int i = 0; i < content.length();i++){char c = content.charAt(i);//判断C是不是字母if(Character.isLetter(c))times[c-'A']++;}//交给下一个servlet显示结果ServletContext context = getServletContext();//添加count属性context.setAttribute("count", times);//跳转至下一个servletRequestDispatcher dispatcher = context.getRequestDispatcher("/ResulstServlet");dispatcher.forward(request, response);}/** * @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response) */protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {// TODO Auto-generated method stubdoGet(request,response);}}
4.在servletDemo包中新建一个servlet,命名为ResultServlet,主要负责统计结果的输出
package servletDemo;import java.io.IOException;import java.io.PrintWriter;import javax.servlet.ServletContext;import javax.servlet.ServletException;import javax.servlet.annotation.WebServlet;import javax.servlet.http.HttpServlet;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;/** * Servlet implementation class ResulstServlet * 显示统计结果 */@WebServlet(asyncSupported = true, urlPatterns = { "/ResulstServlet" })public class ResulstServlet extends HttpServlet {private static final long serialVersionUID = 1L; /** * @see HttpServlet#HttpServlet() */ public ResulstServlet() { super(); // TODO Auto-generated constructor stub }/** * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response) */protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {// TODO Auto-generated method stubServletContext context = getServletContext();int[] times = (int[]) context.getAttribute("count");//输出结果response.setContentType("text/html;charset=utf-8");PrintWriter out = response.getWriter();for(int i = 0; i < times.length;i++){char c = (char) ('A'+ i);int frequency = times[i];out.println("字母:"+c+",出现次数"+frequency+"次!<br/>");}}/** * @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response) */protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {// TODO Auto-generated method stubdoGet(request,response);}}
5.OK,功能实现
1 0
- 利用servlet转发技术实现统计form表单中字母次数
- 利用servlet转发技术实现统计form表单中字母次数
- 利用Map实现统计一组数字(字母)中每个数字(字母)出现的次数
- Servlet实现用户请求次数的统计
- Servlet中实现请求转发
- servlet中实现页面转发
- JaveWeb--Servlet中实现转发
- 利用Servlet实现表单回填
- servlet实现form表单的文件上传
- 统计字符串中出现最多次数的字母
- 统计字符串中每个字母出现的次数
- 统计字符串中出现次数最多的字母并输出
- 统计每个元音字母在字符串中出现的次数
- 统计字符数组中每一个大小写字母出现的次数
- 统计字符串中每个字母出现的次数。
- 使用map集合统计字符串中字母出现的次数
- 统计一句话中每个字母出现的次数。
- 统计字符串中每个字母出现的次数
- Adaboost算法
- 求两个数的最大公约数(位运算)
- 从点滴看管理之积极的进行经验总结
- Python中的NumPy函数库
- mysql DEMO
- 利用servlet转发技术实现统计form表单中字母次数
- SQL数据库主从配置
- python中array和matrix的区别
- 项目方案目录结构总结
- 利用python实现KNN分类器
- linux top命令实用详解
- oracle_sql基础
- 心灵鸡汤:如何摆脱迷茫
- hdu 5045 Contest dp+状态压缩 2014 ACM/ICPC Asia Regional Shanghai Online