首 页 网络编程
网页制作 图形图象 操作系统 冲浪宝典
软件教学 认证考试

网络安全 网络办公 行业资讯 评测对比
您当前位置:站长天空 -> 操作系统-> Windows xp教程
jsp&servelet 学习笔记(1) _jsp教程
作者:网友供稿 点击:0
推荐
西部数码-全国虚拟主机10强!20余项虚拟主机管理功能,全国领先!第6代双线路虚拟主机,南北访问畅通无阻!可在线rar解压,自动数据恢复设置虚拟目录等.免费赠送访问统计,企业邮局.Cn域名注册10元/年,自助建站480元起,免费试用7天,满意再付款!P4主机租用799元/月.月付免压金
站内搜索
文章页数:[1] 
1.1    写出一个 servelet 程序
1.2    写出一个 Jsp程序
1.3    编译一个 Servlet 程序
1.4    打包一个Servlets 和 Jsps程序
1.5    构建一个部署描述器
 
 
1.1    写出一个 servelet 程序
 
问题
你想写一个servlet作为一个web应用程序
解决方案
写一个java class 从 javax.servlet.http.HttpServlet.继承。首先必须倒入一个类包servlet.jar。你将需要里面的类库来编译这个servlet程序。
讨论
一个servlet程序就是一个java类,用于响应客户端通过网络请求的动态内容。如果你熟悉(CGI)程序,那么java技术的servlets完全能取代CGI程序。通常称为一个web 组件,一个servlet 程序在一个运行环境执行将被提供一个servles容器比如 tomcat和bea weblogic.
注释:一个web容器能够被
Servlets被安装在一个web容器中作为一个web应用程序的一部分。这个应用程序将包含 WEB资源。像HTML页面,图片,多媒体片断,servlets, jsps,xml 配置文件,java运行类和类库当一个web应用程序部署到一个web容器里,这个容器将产生和装载这个java servlet类的实例到JVM去处理对于servlet的请求。
所有的servlet继承 javax.servlet.Servlet接口。开发Web应用的程序员特别的写了一个servlet
继承于javax.servlet.http.HttpServlet,一个抽象类实现了Servlet接口并且它是特别为处理HTTP请求设计的。
当一个web容器产生一个servlet实例时,它的基本顺序如下:
1、 servlet容器首先调用这个servlet的init()方法,它建会初始化一个资源给servlet使用。列如一个logger。这个init()方法在整个servlet的生存周期只会被调用一次。
2、 init()方法初始化了一个对象,对象继承了java.servlet.ServletConfig接口。这个对象使servlet能够初始化那些被声明在部署描述符的参数。ServletConfig也使servlet有权使用一个 javax.servlet.ServletContext 的对象,用这个对象servlet可以记录信息,分派请求到其他的web组件上并且能够使用在同一个应用上的其他web资源。
3、 servlet容器调用这个servlet的service()方法去响应servlet的一些请求。根据HttpServlets,service()自动的调用合适的HTTP方法去处理请求通过调用servlet的doGet()或者doPost()方法。几个例子,用户发送了个Post请求这时servlet通过doPost()方法的执行来响应这个请求。
4、 当调用两个主要的HttpServlet的doPost(),doGet()方法,这个servlet容器将产生javax..servlet.http.HttpServletRequest和HttpServletResponse 的对象并且把它们作为参数传到这些处理请求的方法中。
http://www.knowsky.com/ 
5、 管理一个servlet的生命周期,或者决定这个servlet实例对request请求的处理,在java虚拟机上的存在时间。当一个servlet容器开始移除一个servlet的时候将调用servlet的destroy()方法,在这个方法中能够释放所有的资源,比如一个数据库连接。
Example  A typical HttpServlet
 
 package com.mydev;  
 import java.io.IOException; import java.io.PrintWriter;  
 import java.util.Enumeration; import javax.servlet.ServletException;
 import javax.servlet.http.HttpServlet;
 import javax.servlet.http.HttpServletRequest;
 import javax.servlet.http.HttpServletResponse;
 //必须继承HttpServlet接口
 public class FirstServlet extends HttpServlet ...{    
         public void doGet(HttpServletRequest request,     HttpServletResponse response) throws ServletException, java.io.IOException ...{       
      //set the MIME type of the response, "text/html" 
        response.setContentType("text/html");   
      //use a PrintWriter to send text data to the client who has requested the 
     //servlet 
       java.io.PrintWriter out = response.getWriter( );  
    //Begin assembling the HTML content    out.println("<html><head>");   
        out.println("<title>Help Page</title></head><body>"); 
        out.println("<h2>Please submit your information</h2>");   
    //make sure method="post" so that the servlet service method
    //calls doPost in the response to this form submit 
         out.println(        "<form method="post" action ="" + request.getContextPath( ) +            "/firstservlet" >"); 
         out.println("<table border="0"><tr><td valign="top">"); 
         out.println("Your first name: </td> <td valign="top">"); 
         out.println("<input type="text" name="firstname" size="20">"); 
         out.println("</td></tr><tr><td valign="top">"); 
         out.println("Your last name: </td> <td valign="top">"); 
         out.println("<input type="text" name="lastname" size="20">"); 
         out.println("</td></tr><tr><td valign="top">"); 
         out.println("Your email: </td> <td valign="top">"); 
         out.println("<input type="text" name="email" size="20">"); 
         out.println("</td></tr><tr><td valign="top">"); 
         out.println("<input type="submit" value="Submit Info"></td></tr>"); 
         out.println("</table></form>");    out.println("</body></html>");   
   }
//doGet
    public void doPost(HttpServletRequest request,     HttpServletResponse response) throws ServletException,    java.io.IOException   ...{    
    //display the parameter names and values 
        Enumeration paramNames = request.getParameterNames( );  
        String parName;
       //this will hold the name of the parameter   
         boolean emptyEnum = false; 
        if (! paramNames.hasMoreElements( ))  
        emptyEnum = true;      
           //set the MIME type of the response, "text/html" 
        response.setContentType("text/html");    
         //use a PrintWriter to send text data to the client 
        java.io.PrintWriter out = response.getWriter( );    
         //Begin assembling the HTML content 
        out.println("<html><head>"); 
        out.println("<title>Submitted Parameters</title></head><body>");   
          if (emptyEnum)  ...{  
                out.println(           "<h2>Sorry, the request does not contain any parameters</h2>");
          } else   ...{  
                        out.println(        "<h2>Here are the submitted parameter values</h2>");  
          }    
          while(paramNames.hasMoreElements( ))  ...{     
                  parName = (String) paramNames.nextElement( );    
                  out.println(            "<strong>" + parName + "</strong> : " +                request.getParameter(parName));   
                 out.println("<br />");  
          }//while     
         out.println("</body></html>");  
         }
 // doPost
 }
 
你有可能注意到doGet()和doPost()每个将抛出ServletException和IOException.那是因为response.getWriter()将会抛出IO异常。
 
http://blog.csdn.net/bruceleey/archive/2007/02/07/1503843.aspx

文章整理:站长天空 网址:http://www.z6688.com/
以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

文章页数:[1] 


放大字体显示 缩小字体显示 打印文章 推荐给朋友
热门文章
·用ghost完美克隆windows xp+sp2
·[ASP.NET]如何在客户端调用服务端代码-.NET教程,Asp.Net开发
·安装windows sp2后 程序为何不能运行
·windows xp系统虚拟内存的标准设置方法
·SQL Server端口更改后的数据库连接方式-ASP教程,数据库相关
·Java学生成绩管理系统源代码-JSP教程,Java技巧及代码
·精华的微软文章".NET 数据访问架构指南"-.NET教程,数据库应用
·系统高手 xp最新应用技巧六招
·windows xp操作系统疑难问题巧解决
·SQL Server 调用C#。net写的Dll ,(分享我的HelloWorld测验)-.NET教程,C#语言
最新文章
·谈谈三年来做站的经验_站长心得
·用户的体验习惯化与去习惯化_站长心得
·web2.0网站需要借鉴的七种传统赢利模式_站长心得
·网页布局的位置重心与位置间的对比关系_站长心得
·google adsense公益广告的替代方法_google推广
·google adsense全面解析_google推广
·2006年关于google等的15项预测_google推广
·google搜索技巧_google推广
·有趣的网上搜索_google推广
·网站制作简易流程介绍_站长心得
相关主题
  • jsp&servelet 学习笔记-编译一个servlet_jsp技巧
  • jsp&servelet 学习笔记-对一个servlet创建多个mapping_jsp技巧
  • jsp&servelet 学习笔记(5)_jsp教程
  • jsp&servelet 学习笔记(4)_jsp教程
  • jsp&servelet 学习笔记(3)_jsp教程
  • 西部数码虚拟主机

    友情链接
    CNNIC 西部数码
    万网 自助建站
    虚拟主机 asp空间
    域名注册 域名
    域名申请 主页空间
    论坛空间 网站空间
    国际域名 虚拟空间
    空间租用 DDOS防火墙
    成都主机托管 四川主机托管
    主机租用 服务器租用
    网站目录 自助建站
    虚拟主机 网址大全
    软件下载
    自助链接
    虚拟主机资讯 特价虚拟主机
    版权申明:本站文章均来自网络,如有侵权,请联系我们,我们收到后立即删除,谢谢!
    关于我们:站长天空:专业提供最新的站长资讯、在线教程、虚拟主机权威评测、虚拟主机性能对比、网站制作教程,开发教程,站长工具。包括网页制作教程、冲浪宝典、编程参考、操作系统、软件教学、行业动态等。
    特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有。
    发表评论 打印  刷新     关闭