|------------------------------------------------|
| 一、实验目的 掌握怎样在JSP中使用javabean |
| 二、实验项目内容(实验题目) 编写代码,掌握servlet的用法。【参考课本 上机实验3 】 |
|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| 三、源代码以及执行结果截图: 源代码: inputIntegers.jsp: <%@ page contentType="text/html" %> <%@ page pageEncoding = "utf-8" %> <style> #tom { font-family:宋体 ;font-size:26 ;color:blue } </style> <HTML><body bgcolor=#ffccff > <p id=tom > <form action="handleForward" id =tom method=post > <br>输入整数,用逗号或非数字字符分隔:<br> <textArea name="number" id =tom rows=3 cols=32 ></textArea><br> <input type=submit name = "submit" id =tom value=" 提交 ( 看 personOne 的分析 )" /><br> <input type=submit name = "submit" id=tom value=" 提交 ( 看 personTwo 的分析 )" /> </form> ++</++ ++p++ ++>++ </body></HTML> web.xml: <?xml version="1.0" encoding="utf-8" ?> <web-app> <servlet> <servlet-name>handleForward</servlet-name> <servlet-class>moon.sun.HandleForward_Servlet</servlet-class> </servlet> <servlet-mapping> <servlet-name>handleForward</servlet-name> <url-pattern>/handleForward</url-pattern> </servlet-mapping> <servlet> <servlet-name>personOne</servlet-name> <servlet-class>moon.sun.PersonOne_Servlet</servlet-class> </servlet> <servlet-mapping> <servlet-name>personOne</servlet-name> <url-pattern>/personOne</url-pattern> </servlet-mapping> <servlet> <servlet-name>personTwo</servlet-name> <servlet-class>moon.sun.PersonTwo_Servlet</servlet-class> </servlet> <servlet-mapping> <servlet-name>personTwo</servlet-name> <url-pattern>/personTwo</url-pattern> </servlet-mapping> </web-app> HandleForward_Servlet.Java package moon.sun; import java.io.*; import javax.servlet.*; import javax.servlet.http.*; public class HandleForward_Servlet extends HttpServlet{ public void init(ServletConfig config) throws ServletException{ super.init(config); } public void service(HttpServletRequest request,HttpServletResponse response) throws ServletException,IOException{ RequestDispatcher dispatcher = null; request.setCharacterEncoding("utf-8"); response.setContentType("text/html;charset=utf-8"); String mess = request.getParameter("submit"); String integers = request.getParameter("number"); if(integers == null ||integers.length()==0) { response.sendRedirect("inputIntegers.jsp"); return; } if(mess.contains("personOne")) { dispatcher = request.getRequestDispatcher("personOne"); dispatcher.forward(request,response); } else if(mess.contains("personTwo")){ dispatcher = request.getRequestDispatcher("personTwo"); dispatcher.forward(request,response); } } } PersonOne_Servlet package moon.sun; import java.io.*; import javax.servlet.*; import javax.servlet.http.*; import java.util.regex.Pattern; import java.util.regex.Matcher; public class ++PersonOne_Servlet++ extends HttpServlet{ public void init(ServletConfig config) throws ServletException{ super .init(config); } public void service(HttpServletRequest request,HttpServletResponse response) throws ServletException,IOException{ request.setCharacterEncoding("utf-8"); response.setContentType("text/html;charset=utf-8"); PrintWriter out=response.getWriter(); String integers = request.getParameter("number"); String backMess = analysisIntegers(integers); out.print("<html><body><h1>"+backMess+"</body></html>"); } public String analysisIntegers(String input){ Pattern pattern; Matcher matcher; String regex="-?[0-9][0-9]*" ; pattern = Pattern.compile(regex); matcher = pattern.matcher(input); StringBuffer evenNumbers = new StringBuffer("<br>偶数:"); StringBuffer oddNumbers = new StringBuffer("<br>奇数:"); while (matcher.find()) { String str = matcher.group(); if (Integer.parseInt(str)%2==0){ evenNumbers.append(str+","); } else { oddNumbers.append(str+","); } } StringBuffer buffer = evenNumbers.append(oddNumbers); return new String(buffer); } } PersonTwo_Servlet package moon.sun; import java.io.*; import javax.servlet.*; import javax.servlet.http.*; import java.util.regex.Pattern; import java.util.regex.Matcher; public class ++PersonTwo_Servlet++ extends HttpServlet{ public void init(ServletConfig config) throws ServletException{ super .init(config); } public void service(HttpServletRequest request,HttpServletResponse response) throws ServletException,IOException{ request.setCharacterEncoding("utf-8"); response.setContentType("text/html;charset=utf-8"); PrintWriter out=response.getWriter(); String integers = request.getParameter("number"); String backMess = analysisIntegers(integers); out.print("<html><body><h1>"+backMess+"</body></html>"); } public String analysisIntegers(String input){ Pattern pattern; Matcher matcher; String regex="-?[0-9][0-9]*" ; pattern = Pattern.compile(regex); matcher = pattern.matcher(input); StringBuffer numbersZero = new StringBuffer("3的倍数:<br>"); StringBuffer numbersOne = new StringBuffer("<br>除以3余1:<br>"); StringBuffer numbersTwo = new StringBuffer("<br>除以3余2:<br>"); while (matcher.find()) { String str = matcher.group(); if (Integer.parseInt(str)%3==0){ numbersZero.append(str+","); } else if (Integer.parseInt(str)%3==1){ numbersOne.append(str+","); } else if (Integer.parseInt(str)%3==2){ numbersTwo.append(str+","); } } StringBuffer buffer = numbersZero.append(numbersOne.append(numbersTwo)); return new String(buffer); } } 运行结果图:
|