一、servlet注解 servlet3.0支持使用@WebServlet注解来实现JSP到servlet的跳转,此方法不需要配置项目中的web.xml文件。 Test.jsp <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>

TEST

TestServlet.java package test; import java.io.IOException; import javax.servlet.annotation.WebServlet; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; /** * Servlet implementation class TestServlet */ @WebServlet("/TestServlet") public class TestServlet extends HttpServlet { private static final long serialVersionUID = 1L; public GameDao() { super(); } protected void service(HttpServletRequest request, HttpServletResponse response) throws IOException { System.out.println(request.getParameter("text")); response.sendRedirect("Test.jsp"); } } 也可以使用@WebServlet提供更多信息,如以上的@WebServlet可以改为 @WebServlet( name="testServlet", urlPatterns="/TestServlet", loadOnStartup=1 ) 上面的@WebServlet告知web容器: 这个Servlet的名称是testServlet,这是由name属性指定的(name属性如果没有指定则默认为Servlet类完整名称); 如果客户端请求的URL是/TestServlet,则由具有testServlet名称的Servlet来处理,这是由urlpatterns属性来指定的; 当应用程序启动后,事实上并没有创建所有的Servlet实例。容器会在首次请求需要某个Servlet服务时,才将对应的Servlet类实例化,进行初始化操作,然后在处理请求。这意味着第一次请求该Servle的客户端,必须等待Servlet类实例化,进行初始动作所必须花费时间,才真正得到请求的处理。 如果希望应用程序启动时,就把Servlet类载入,实例化并做好初始化动作,可以使用loadOnStartup设置。设置大于0的值(默认值-1),表示启动应用程序后就要初始化Servlet(而不是实例化几个Servlet)。数字代表了Servlet的初始顺序,容器必须保证有较小数字的Servlet先初始化,在使用标注的情况下,如果有多个Servlet在设置loadOnStartup时使用了相同的数字,则容器实现厂商可以自行决定要如何载入哪个Servlet。 二、配置web.xml 适用范围广泛,可以更方便的修改地址映射,便于管理跳转地址等。 跳转测试 Test test.TestServlet Test /TestServlet index.html index.htm index.jsp default.html default.htm default.jsp web.xml配置详解:https://www.cnblogs.com/chinafine/archive/2010/09/02/1815980.html 转载于:https://www.cnblogs.com/dream0-0/p/11201424.html