二、簡單的Servle開發

來源:互聯網
上載者:User

一、環境

本文檔中的開發環境和部署環境為:

JDK:1.6.0

Tomcat:6.0

 

二、簡單的例子

Servlet的編寫很簡單,你可以在Eclipse或myEclipse等工具中來完成,其初略的架構如下:

import java.io.*;

import javax.servlet.http.HttpServlet;
import javax.servlet.*;
import javax.servlet.http.*;
public class HelloServlet extends HttpServlet {  
    private static final long serialVersionUID = 1L;   
    ...... 
}

 

1、HelloServlet

 

import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;

public class HelloServlet extends HttpServlet {

public void doGet(HttpServletRequest request,
HttpServletResponse response)
throws ServletException, IOException {
    PrintWriter out = response.getWriter();
    out.println("Hello Servlet");
}

}

1)將該檔案儲存成HelloServlet.java,然後編譯成對應的class檔案。

2)在Tomcat的webapps目錄下面建立目錄HelloServlet,目錄結構如下所示:

     -HelloServlet

      --META-INF

      --WEB-INF

         --classes

         --lib

         --web.xml

這個目錄結構是tomcat發布web應用的標準目錄結構。

classes目錄下面儲存編譯出來的class檔案;

lib目錄下面主要儲存一些需要用到的jar包,這裡用不到;

web.xml是tomcat發布web應用時的設定檔。

將上面編譯出來的class檔案拷貝到classes目錄中。

3)修改web.xml檔案

通常情況下,預設產生的web.xml檔案的內容如下:

<?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.4"
 xmlns="http://java.sun.com/xml/ns/j2ee"
 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
 xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee
 http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
  <welcome-file-list>
    <welcome-file>index.jsp</welcome-file>
  </welcome-file-list>
</web-app>

為了發布前邊編寫的Servlet,需要在該檔案中增加如下的內容:

  <servlet>
   <servlet-name>HelloServlet</servlet-name>
   <servlet-class>HelloServlet</servlet-class>
  </servlet>

  <servlet-mapping>
   <servlet-name>HelloServlet</servlet-name>
   <url-pattern>/Hello</url-pattern>
  </servlet-mapping>

注意:在一個web.xml檔案中,可以同時發布多個Servlet,它們之間互不干涉,但是需要注意,在配置web.xml檔案的時候,不能存在同名的servlet-name。

4)啟動Tomcat,並訪問

(我是建立的目錄是WebRoot)

 

到此,一個簡單的Servlet成功發布了。

2、產生HTML的Servlet

注意:在產生HTML內容的時候,必須先設定content type。如代碼中的加粗一行。

import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;

 

public class HelloServlet extends HttpServlet {

public void doGet(HttpServletRequest request,
HttpServletResponse response)
throws ServletException, IOException {
       //設定content type

response.setContentType("text/html");
PrintWriter out = response.getWriter();
String docType =
"<!DOCTYPE HTML PUBLIC /"-//W3C//DTD HTML 4.0 " +
"Transitional//EN/">/n";
out.println(docType +
"<HTML>/n" +
"<HEAD><TITLE>Hello</TITLE></HEAD>/n" +
"<BODY BGCOLOR=/"#FDF5E6/">/n" +
"<H1>Hello</H1>/n" +
"</BODY></HTML>");

}

}

 

 

三、總結

開發Servlet不是一件複雜的事情,能很快的入手,在發布的時候,需要注意配置web.xml檔案。

 

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.