今天又搞了下jsp +servlet 的代码样例,感觉虽然搭了好多次,可是每次还是不记得那些参数,都要去网上搜索,索性自己把这次的简单demo给记录下来,供下次使用的时候直接复制吧。

这个web逻辑 input.jsp ---->ReportServlet -->output.jsp (在servlet中输入值,将参数传递到output.jsp中)

整个文档目录结构如下:

相关代码如下:

input.jsp:

  1. <%@ page language="java" contentType="text/html; charset=UTF-8"
  2. pageEncoding="UTF-8"%>
  3. <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
  4. <html>
  5. <head>
  6. <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
  7. <title>Insert title here</title>
  8. </head>
  9. <body>
  10. <form method="post" action="report" >
  11. <p> seller_id</p>
  12. <input type="text" name="seller_id"></input>
  13. <label for="from_date">from_date:</label>
  14. <input type="text" id="from_date" name="from_date" />
  15. <label for="end_date">end_date:</label>
  16. <input type="text" id="end_date" name="end_date" />
  17. <input type="submit" id="submit" name="submit" />
  18. </form>
  19. </body>
  20. </html>

output.jsp

  1. <%@ page language="java" contentType="text/html; charset=UTF-8"
  2. pageEncoding="UTF-8"%>
  3. <%@ page import="java.util.*"%>
  4. <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
  5. <html>
  6. <head>
  7. <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
  8. <title>Insert title here</title>
  9. </head>
  10. <body>
  11. <%
  12. List<String> result =(List)request.getAttribute("result");
  13. %>
  14.  
  15. <table>
  16. <%
  17. for(String str:result)
  18. {
  19. %>
  20. <tr>
  21. <td>
  22. <%=str+"\n" %>
  23. </td>
  24. </tr>
  25. <%} %>
  26. </table>
  27. </body>
  28. </html>

web.xml(主要是注意servlet配置)

  1. <?xml version="1.0" encoding="UTF-8"?>
    <web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" id="WebApp_ID" version="3.0">
      <display-name>Report</display-name>
      <welcome-file-list>
        <welcome-file>index.html</welcome-file>
        <welcome-file>index.htm</welcome-file>
        <welcome-file>index.jsp</welcome-file>
        <welcome-file>default.html</welcome-file>
        <welcome-file>default.htm</welcome-file>
        <welcome-file>default.jsp</welcome-file>
      </welcome-file-list>
     
      <servlet>
            <servlet-name>reportServlet</servlet-name>
            <servlet-class>cn.edu.ReportServlet</servlet-class>
        </servlet>
        <servlet-mapping>
            <servlet-name>reportServlet</servlet-name>
            <url-pattern>/report</url-pattern>
        </servlet-mapping>
        
    </web-app>

ReportServlet.java 内容

  1. package cn.edu;
  2. import java.io.IOException;
  3. import java.io.PrintWriter;
  4. import java.util.ArrayList;
  5. import java.util.List;
  6.  
  7. import javax.servlet.ServletException;
  8. import javax.servlet.http.HttpServlet;
  9. import javax.servlet.http.HttpServletRequest;
  10. import javax.servlet.http.HttpServletResponse;
  11. import javax.servlet.http.HttpSession;
  12.  
  13. public class ReportServlet extends HttpServlet{
  14. public void doGet(HttpServletRequest request, HttpServletResponse response)
  15. throws ServletException, IOException {
  16.  
  17. doPost(request,response);
  18. }
  19.  
  20. public void doPost(HttpServletRequest request, HttpServletResponse response)
  21. throws ServletException, IOException {
  22. String from_date = request.getParameter("from_date");
  23. System.out.println(from_date);
  24.  
  25. List <String> result = new ArrayList<String>();
  26. result.add("apple");
  27. result.add("apple");
  28. result.add("apple");
  29. result.add("apple");
  30. //HttpSession session=request.getSession();
  31. request.setAttribute("result", result);
  32. request.getRequestDispatcher("output.jsp").forward(request,response);
  33. //return ;
  34. //response.sendRedirect("/Report/output.jsp");
  35. //request.
  36. //response.sendRedirect(arg0)
  37.  
  38. // response.setContentType("text/html;charset=utf-8");
  39. // PrintWriter out = response.getWriter();
  40. // request.setCharacterEncoding("utf-8");
  41. // out.println("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.01 Transitional//EN\">");
  42. // out.println("<HTML>");
  43. // out.println(" <HEAD><TITLE>display survey information</TITLE></HEAD>");
  44. // out.println(" <BODY>");
  45. // out.println("<h2>用户输入的信息</h2>");
  46. // out.println("用户名:"+request.getParameter("name")+"<br>");
  47. // out.println("e-mail:"+request.getParameter("email")+"<br>");
  48. // out.println("年纪:"+request.getParameter("age")+"<br>");
  49. // out.println("编程时间:"+request.getParameter("codetime")+"<br>");
  50. // out.println("你使用的操作系统:");
  51. // printValues(out,request.getParameterValues("os"));
  52. // out.println("你使用的编程语言:");
  53. // printValues(out,request.getParameterValues("language"));
  54. // out.println("建议:"+request.getParameter("comment")+"<br>");
  55. // out.println(" </BODY>");
  56. // out.println("</HTML>");
  57. // out.flush();
  58. // out.close();
  59. }
  60.  
  61. public void printValues(PrintWriter out,String[] values){
  62. if(values==null || values.length==0)
  63. return;
  64. out.println("<ul>");
  65. for(int i=0;i<values.length;i++){
  66. out.println("<li>"+values[i]+"</li>");
  67. }
  68. out.println("</ul>");
  69. }
  70. }

好了,就这样了,祝学习web的朋友们好运。

java servlet 代码样例 (demo)的更多相关文章

  1. JAVA各种OOM代码样例及解决方法

    周末了,觉得我还有很多作业没有写,针对目前大家对OOM的类型不太熟悉,那么我们来总结一下各种OOM出现的情况以及解决方法. 我们把各种OOM的情况列出来,然后逐一进行代码编写复现和提供解决方法. 1. ...

  2. pagebean pagetag java 后台代码实现分页 demo 前台标签分页 后台java分页

    java 后台代码实现分页 demo 实力 自己写的 标签分页 package com.cszoc.sockstore.util; import java.util.HashMap;import ja ...

  3. zookeeper实战:SingleWorker代码样例

    我们需要一个“单点worker”系统,此系统来确保系统中定时任务在分布式环境中,任意时刻只有一个实例处于活跃:比如,生产环境中,有6台机器支撑一个应用,但是一个应用中有30个定时任务,这些任务有些必须 ...

  4. Java线程演示样例 - 继承Thread类和实现Runnable接口

    进程(Process)和线程(Thread)是程序执行的两个基本单元. Java并发编程很多其它的是和线程相关. 进程 进程是一个独立的执行单元,可将其视为一个程序或应用.然而,一个程序内部同事还包括 ...

  5. 2020JAVA最新应对各种OOM代码样例及解决办法

    引言 作者:黄青石 链接:https://www.cnblogs.com/huangqingshi/p/13336648.html?utm_source=tuicool&utm_medium= ...

  6. 33个超级有用必须要收藏的PHP代码样例

    作为一个正常的程序员,会好几种语言是十分正常的,相信大部分程序员也都会编写几句PHP程序,如果是WEB程序员,PHP一定是必备的,即使你没用开发过大型软件项目,也一定多少了解它的语法. 在PHP的流行 ...

  7. 30个php操作redis经常用法代码样例

    这篇文章主要介绍了30个php操作redis经常用法代码样例,本文事实上不止30个方法,能够操作string类型.list类型和set类型的数据,须要的朋友能够參考下 redis的操作非常多的,曾经看 ...

  8. 14.ZooKeeper Java API 使用样例

    转自:http://www.aboutyun.com/thread-7332-1-1.html package com.taobao.taokeeper.research.sample; import ...

  9. PHP代码样例

    1 <?php 2 3 /** 4 * 时间:2015-8-6 5 * 作者:River 6 * 超级有用.必须收藏的PHP代码样例 7 */ 8 class Helper { 9 10 /** ...

随机推荐

  1. Web SQL Database实例

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  2. Java中的字符串常量池

    ava中字符串对象创建有两种形式,一种为字面量形式,如String str = "droid";,另一种就是使用new这种标准的构造对象的方法,如String str = new ...

  3. LESS 学习记录(简单入门)

    什么是 LESS LESS是一种动态样式语言,属于 CSS 预处理语言的一种.它使用类似 CSS 的语法,但是 赋予了动态语言的特性,比如变量.继承.运算.函数等,方便 CSS 的编写和维护. 使用 ...

  4. 8天掌握EF的Code First开发系列之2 简单的CRUD操作

    本文出自8天掌握EF的Code First开发系列,经过自己的实践整理出来. 本篇目录 创建控制台项目 根据.Net中的类来创建数据库 简单的CRUD操作 数据库模式更改介绍 本章小结 本人的实验环境 ...

  5. linux vim 替换指定字符为回车

    有个问题,想要知道逗号分隔的字符串  example: aaa,bbb,ccc 分隔后的个数 1 将   aaa,bbb,ccc 替换成 aaa bbb ccc 方法: :%s/,/^M/g ^M是用 ...

  6. ios category,protocol理解

    category: 向现有的类中增加方法,同时提供方法的实现,现有类不需要做任何改动. protocol:(相当于Java或C#中的接口interface,当很多类都要需要类似的方法,但是方法具体实现 ...

  7. 前端Html+Css——豆蔻年华(自学一个月)

    详细见千万别碰我--燕十三 html .htm .shtml三者区别是什么 1..htm与.html没有本质上的区别,表示的是同一种文件,只是适用于不同的环境之下. 2.DOS仅能识别8+3的文件名, ...

  8. wget net-tools

    新安装的centos7 minimal 没有安装 wget 需要安装一下,才能安装lnmp yum -y install wget yum -y install net-tools

  9. 【MVC】 基础

    [MVC] 基础 一. Controller ActionResult ContentResult  返回string类型 EmptyResult     空 FileContentResult    ...

  10. Delphi 7学习开发控件

    我们知道使用Delphi快速开发,很大的一方面就是其强大的VCL控件,另外丰富的第三方控件也使得Delphi程序员更加快速的开发出所需要的程序.在此不特别介绍一些概念,只记录自己学习开发控件的步骤.假 ...