Servlet(一)Servlet基础

本文详细介绍了Servlet的基础知识,包括Servlet的概念、Tomcat容器的等级、手工和使用Eclipse创建Servlet的步骤,以及Servlet的执行流程。还讨论了通过Servlet获取表单数据的方法、Servlet的路径跳转,并给出了应用示例:使用Servlet实现用户登录功能。
摘要由CSDN通过智能技术生成

Servlet基础

目录

Servlet基础

-Servlet概述

-Tomcat容器等级

-HelloServlet手工编写第一个Servlet

-HelloServlet使用eclipse编写第一个Servlet

-Servlet执行流程

-Tomacat装载Servlet的三种情况

-JSP与SerVlet对象的对应关系

-通过Servlet获取表单数据

-Servlet的路径跳转

应用:用Server实现用户登录


-Servlet概述

jsp的前身就是Servlet

什么是Servlet:Servlet是在服务器上运行的小程序。一个Servlet就是一个Java类,并且可以通过“请求-响应”编程模型来访问的这个驻留在服务器内存里的Servlet程序

-Tomcat容器等级

Tomcat容器分为四个等级,

1. Container 容器,集装箱

2.Engine 引擎容器

3.Host 主机()

4.Servlet容器(tomcat最低级别的容器)里面包含了一个或多个Context

—— Context (上下文,背景,环境) 一个context对应一个web项目

—— Wrapper 容器里的封装部分。

-HelloServlet手工编写第一个Servlet

1.      继承HttpServlet

Servlet层级关系:

Servlet(接口)-->GenericServlet(抽象类,与协议无关的Servlet)-->HttpServlet(抽象类,实现了Http协议的Servlet)-->Custom Servlet(自定义的Servlet)。

如何创建和使用Servlet?

2.      重写doGet()和doPost方法

3.      注册Servlet

a)      在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>

b)Servlet3.0之后可以使用注解来表示所有xml中的配置:

@WebServlet(name="HelloServlet",value={"/servlet/HelloServlet"})

测试:

在Eclipse中新建DynamicWebProject的时候不要直接点"完成",在下一步有个勾选项(Generate web.xml deployment descriptor),选上就会默认生成web.xml

选择Superclass,输入HttpServlet -选择第一项- OK

选择source-Override/Implement methods

勾选doGet和doPost

Index.jsp

<%@ page language="java" import="java.util.*"

    contentType="text/html; charset=utf-8" pageEncoding="utf-8"%>

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">

<html>

<head>

<meta http-equiv="Content-Type" content="text/html; charset=utf-8">

<title>Insert title here</title>

</head>

<body>

    <h1>第一个Servlet小例子</h1>

    <hr>

    <a href="servlet/HelloServlet">Get方式请求HelloServlet</a><br>

    <form action="servlet/HelloServlet" method="post">

    <input type="submit" value="Post方式请求HelloServlet">

    </form>



</body>

</html>



HelloServlet.java

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;

//继承于HttpServlet

public class HelloServlet extends HttpServlet {



    @Override

    protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {

        // TODO Auto-generated method stub

        System.out.println("处理Get请求。。。");

        PrintWriter out=response.getWriter();

        out.println("<strong>Hello Servlet!</strong><br>");

    }



    @Override

    protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {

        // TODO Auto-generated method stub

        System.out.println("处理Post请求。。。");

        PrintWriter out=response.getWriter();

        out.println("<strong>Hello Servlet!</strong><br>");

    }

   



}

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>

运行:

-HelloServlet使用eclipse编写第一个Servlet

Servlet不能自动配置web.xml的原因

建dynamic web project 时,dynamic web module version选择2.5就ok了。

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值