码迷,mamicode.com
首页 > 其他好文 > 详细

Servlet基础-手工编写第一个servlet

时间:2015-03-28 18:40:14      阅读:187      评论:0      收藏:0      [点我收藏+]

标签:

【手工编写第一个servlet

技术分享

【步骤】

1.继承HttpServlet

2.重写doGet()或者doPost()方法  //这个doGet或者doPost方法取决用户提交的方式

3.在web.xml中注册servlet

 

【实现】

1.index.jsp

<body>
    <h1>第一个servlet小例子</h1>
    <hr>
        <a href="servlet/HelloServlet">通过doGet得到servlet</a>
        <form action="servlet/HelloServlet" method="post">
            <input type="submit" value="通过doPost得到servlet"/>
        </form>
  </body>

2.servlet/HelloServlet

package servlet;

import java.io.IOException;
import java.io.PrintWriter;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

public class HelloServlet extends HttpServlet {
    @Override
    protected void doGet(HttpServletRequest request, HttpServletResponse response)
            throws ServletException, IOException {
        System.out.println("处理doGet()方法......");
        PrintWriter out=response.getWriter();  //获取在浏览器输出的对象
        response.setContentType("text/html;charset=utf-8");  //按照样式输出html的格式
        out.println("<strong>HelloServlet</strong>");
    }
    @Override
    protected void doPost(HttpServletRequest request, HttpServletResponse response)
            throws ServletException, IOException {
        System.out.println("处理doPost()方法......");
        PrintWriter out=response.getWriter();  //获取在浏览器输出的对象
        response.setContentType("text/html;charset=utf-8");  //按照样式输出html的格式
        out.println("<strong>HelloServlet</strong>");
    }
}

3.配置WEB-INF/web.xml

<servlet>
      <servlet-name>HelloServlet</servlet-name>
      <servlet-class>servlet.HelloServlet</servlet-class>
  </servlet>
  <servlet-mapping>
      <servlet-name>HelloServlet</servlet-name>
      <url-pattern>/servlet/HelloServlet</url-pattern>
  </servlet-mapping>

 

【分析】

1.在书写java代码的时候需要继承HttpServlet

2.在实现doPost或者doGet方法的时候一定要删除(见下图),否则你的页面将不会显示内容

技术分享

3.在web.xml文件中

技术分享

这两条语句的name必须相同,否则你的console控制台将会报错

4.运行原理分析:页面中的href中的链接为“servlet/HelloServlet”,首先进入<servlet-mapping>,找到虚拟路径,然后通过name找到<servlet>----><servlet-name>----><servlet-class> (这是小编的理解,我觉得应该正确,如有错误请指出)

Servlet基础-手工编写第一个servlet

标签:

原文地址:http://www.cnblogs.com/boy1025/p/4374487.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!