Chinaunix首页 | 论坛 | 博客
  • 博客访问: 14480981
  • 博文数量: 5645
  • 博客积分: 9880
  • 博客等级: 中将
  • 技术积分: 68081
  • 用 户 组: 普通用户
  • 注册时间: 2008-04-28 13:35
文章分类

全部博文(5645)

文章存档

2008年(5645)

我的朋友

分类:

2008-04-28 21:41:06

下载本文示例代码
天极IT资讯短信服务 电脑小技巧 function check4() { if (dn.mobile.value.length!=11) { alert("手机号码不正确!"); dn.mobile.focus(); return false; } return true; } 资费:包月5元 手机: 介绍:细处着手,巧处用功。高手和菜鸟之间的差别就是:高手什么都知道,菜鸟知道一些。电脑小技巧收集最新奇招高招,让你轻松踏上高手之路。   Servlet 链提供了Servlet 应用的一种特殊功能。与UNIX 和DOS 命令中的管道类似,可以将多个Servlet 以特定顺序链接起来。在Servlet 链中,一个Servlet 的输出被当作下一个Servlet 的输入,而链中最后一个Servlet 的输出被返回到浏览器。  编程思路:首先编写一个表过滤器Servlet,它的作用主要是按照一定的表格格式输出,在通过Servlet 表过滤器(TableFilter.java)后,无格式化的Servlet(ghq.java)所有的行将会被格式化成HTML表格。  表过滤器 TableFilter.java 的源代码如下:(代码节选) import javax.servlet.*;import javax.servlet.http.*;import java.io.*;public class TableFilter extends HttpServlet{ public void service(HttpServletRequest req, HttpServletResponse resp) throws ServletException, java.io.IOException {  // Get all headers set by the previous servlet and echo them  java.util.Enumeration e = req.getHeaderNames();  while (e.hasMoreElements()) {   String header = (String)e.nextElement();   String value = req.getHeader(header);   resp.setHeader(header, value);  }  // Get the input and output streams  ServletInputStream in = req.getInputStream();   ServletOutputStream out = resp.getOutputStream();  // Only process if this is a recognized MIME type  String type = req.getContentType();  if (type.equals("text/html") || type.equals("text/table") ||type.equals("application/x-www-form-urlencoded")) {   resp.setContentType("text/html");   // Create a buffered reader that we can use to read   // a single line at a time   BufferedReader br = new BufferedReader(new InputStreamReader(in));   boolean inTable = false;   int tableCols = 0;   boolean headerRow = false;   // Read until no more data exists   while (true) {    String s = br.readLine();    // null indicates end of file    if (s == null) {     break;    }   // If we are in the middle of a table command, process   // the line   if (inTable) {    // Search for the end of the table    if (s.startsWith("");  // Output the table  out.println("姓名,性别,联系电话");  out.println("谷物,男,4324552");  out.println("江淮,女,2345265");  out.println("王冠,男,7867655");  out.println("张罗,男,5654343");  out.println("许愿,女,8876554");  out.println("");  // Wrap up  out.println("");  out.flush();  out.close(); } public void init(ServletConfig cfg) throws ServletException {  super.init(cfg); } public void destroy() {  super.destroy(); }}  编程技巧说明:  触发Servlet 链,有3种触发Servlet 链的方式:  * 通过在URL 中用逗号分隔的多个Servlet 来直接触发。  * 将多个Servlet 指定同一个别名,然后通过别名方式来触发Servlet 链。  * 指定一种MIME 类型,规定凡是这种MIME 类型的响应都要通过某一个Servlet 来过滤,这也是一种Servlet 链的应用。  其中第三种应用比较特殊,可以用来格式化文本,在一些Internet 翻译网站也可能用来对结果文本进行翻译。  用第一种直接在URL中触发Servlet 链的方法很简单,只要在URL后面将链中的Servlet 用逗号按顺序隔开即可。在浏览器的地址栏输入URL 如下:  用第二种方法使用别名方式指定Servlet 链,如采用JRUN servlet 引擎,则在JRUN 的Servlet URL Mapping 功能中进行配置。如在"Virtual Path/Extension" 项中输入 " /test ",在"Servlet invoked" 项中输入" ghq,TableFilter ",则在用别名触发Servlet 的URL 如下: 天极IT资讯短信服务 电脑小技巧 function check4() { if (dn.mobile.value.length!=11) { alert("手机号码不正确!"); dn.mobile.focus(); return false; } return true; } 资费:包月5元 手机: 介绍:细处着手,巧处用功。高手和菜鸟之间的差别就是:高手什么都知道,菜鸟知道一些。电脑小技巧收集最新奇招高招,让你轻松踏上高手之路。   Servlet 链提供了Servlet 应用的一种特殊功能。与UNIX 和DOS 命令中的管道类似,可以将多个Servlet 以特定顺序链接起来。在Servlet 链中,一个Servlet 的输出被当作下一个Servlet 的输入,而链中最后一个Servlet 的输出被返回到浏览器。  编程思路:首先编写一个表过滤器Servlet,它的作用主要是按照一定的表格格式输出,在通过Servlet 表过滤器(TableFilter.java)后,无格式化的Servlet(ghq.java)所有的行将会被格式化成HTML表格。  表过滤器 TableFilter.java 的源代码如下:(代码节选) import javax.servlet.*;import javax.servlet.http.*;import java.io.*;public class TableFilter extends HttpServlet{ public void service(HttpServletRequest req, HttpServletResponse resp) throws ServletException, java.io.IOException {  // Get all headers set by the previous servlet and echo them  java.util.Enumeration e = req.getHeaderNames();  while (e.hasMoreElements()) {   String header = (String)e.nextElement();   String value = req.getHeader(header);   resp.setHeader(header, value);  }  // Get the input and output streams  ServletInputStream in = req.getInputStream();   ServletOutputStream out = resp.getOutputStream();  // Only process if this is a recognized MIME type  String type = req.getContentType();  if (type.equals("text/html") || type.equals("text/table") ||type.equals("application/x-www-form-urlencoded")) {   resp.setContentType("text/html");   // Create a buffered reader that we can use to read   // a single line at a time   BufferedReader br = new BufferedReader(new InputStreamReader(in));   boolean inTable = false;   int tableCols = 0;   boolean headerRow = false;   // Read until no more data exists   while (true) {    String s = br.readLine();    // null indicates end of file    if (s == null) {     break;    }   // If we are in the middle of a table command, process   // the line   if (inTable) {    // Search for the end of the table    if (s.startsWith("");  // Output the table  out.println("姓名,性别,联系电话");  out.println("谷物,男,4324552");  out.println("江淮,女,2345265");  out.println("王冠,男,7867655");  out.println("张罗,男,5654343");  out.println("许愿,女,8876554");  out.println("");  // Wrap up  out.println("");  out.flush();  out.close(); } public void init(ServletConfig cfg) throws ServletException {  super.init(cfg); } public void destroy() {  super.destroy(); }}  编程技巧说明:  触发Servlet 链,有3种触发Servlet 链的方式:  * 通过在URL 中用逗号分隔的多个Servlet 来直接触发。  * 将多个Servlet 指定同一个别名,然后通过别名方式来触发Servlet 链。  * 指定一种MIME 类型,规定凡是这种MIME 类型的响应都要通过某一个Servlet 来过滤,这也是一种Servlet 链的应用。  其中第三种应用比较特殊,可以用来格式化文本,在一些Internet 翻译网站也可能用来对结果文本进行翻译。  用第一种直接在URL中触发Servlet 链的方法很简单,只要在URL后面将链中的Servlet 用逗号按顺序隔开即可。在浏览器的地址栏输入URL 如下:  用第二种方法使用别名方式指定Servlet 链,如采用JRUN servlet 引擎,则在JRUN 的Servlet URL Mapping 功能中进行配置。如在"Virtual Path/Extension" 项中输入 " /test ",在"Servlet invoked" 项中输入" ghq,TableFilter ",则在用别名触发Servlet 的URL 如下: 下载本文示例代码


Java Servlet 编程及应用之六Java Servlet 编程及应用之六Java Servlet 编程及应用之六Java Servlet 编程及应用之六Java Servlet 编程及应用之六Java Servlet 编程及应用之六Java Servlet 编程及应用之六Java Servlet 编程及应用之六Java Servlet 编程及应用之六Java Servlet 编程及应用之六Java Servlet 编程及应用之六Java Servlet 编程及应用之六Java Servlet 编程及应用之六Java Servlet 编程及应用之六Java Servlet 编程及应用之六
阅读(70) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~