2013-06-14 4 views
0

Я только начал изучать сервлетов: Насколько я знаю, мы можем создать сервлет в 3-х направлениях:как выход, когда мы реализуем интерфейс Servlet

  1. Написав класс, расширяющий HttpServlet
  2. написав класс, который расширяет GenericServlet
  3. непосредственно реализующего интерфейс Servlet (это правильно?)

Я пытался 3-й метод: но в этом я не знаю, как печатать на веб-странице. В первых двух примерах мы использовали вызов print на объекте ответа, который был получен методом getWriter().

Могу ли я напечатать что-то на веб-странице, когда я использую метод 3 для создания сервлета?

ответ

1

Похоже, вы делаете это так же, как и в методе service(). Это работает для меня:

package com.example.ServletInterface.servlets; 

import java.io.*; 
import javax.servlet.*; 
import javax.servlet.annotation.WebServlet; 

@WebServlet("/MyServlet") 
public class MyServlet implements Servlet{ 
    ServletConfig config = null; 

    public void init(ServletConfig config) { 
     this.config = config; 
    } 

    public void service(ServletRequest req, ServletResponse resp) 
        throws IOException, ServletException { 

     resp.setContentType("text/html"); 
     PrintWriter out = resp.getWriter(); //<***********LOOK AT ME******** 

     out.print("<html>"); 
     out.print("<head><title>Test</title>"); 
     out.print("<body><div>hello world</div></body>"); 
     out.print("</html>"); 

    } 

    public void destroy() { 
     System.out.println("Servlet is destroyed"); 
    } 

    public ServletConfig getServletConfig() { 
     return config; 
    } 

    public String getServletInfo() { 
     return "MyServlet"; 
    } 
} 

Следуя этому примеру: http://www.javatpoint.com/Servlet-interface

Смежные вопросы