最近一直搞JSP,用JSP页面也写了不少功能模块,但把功能写在JSP页面里,总觉得封装性不是很好,有种想把几个重要的页面写成SERVLET直接访问它,这样在地址栏里隐藏URL比较有效,在网上搜索了一大堆关于TOMACT配置servlet的文章,有收获但不是很满意,因为都是介绍配置某个事例来讲解的,当然这也是原理之谈,值得重视,可还是不能达到我的目的,因为我是想达到这种效果,直接输入CLASS名(这里当然是全称),来访问对应的servlet,如果你也是想达到这样的效果的话,就请看下面的配置步骤吧.
步骤一: 把你对应的SERVLET放入WEB-INF/classes下
步骤二:打开WEB-INF下的web.xml,配置内容改为如下:
<servlet>
<servlet-name>invoker</servlet-name>
<servlet-class>org.apache.catalina.servlets.InvokerServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>invoker</servlet-name>
<url-pattern>/servlet/*</url-pattern>
</servlet-mapping>
重新启动TOMCAT,就可以达到你想要的效果
测试servlet实例:
package test;
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 Test extends HttpServlet {
protected void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
PrintWriter out=response.getWriter();
out.println("<h1>This is a servlet test.</h1>");
out.flush();
}
}
编译--->把Test.class放入classes-->结构应该是这样的:classes/test/Test.class
重新启动TOMCAT
在地址栏里输入 http://127.0.0.1:8080/servlet/test.Test
显示:
This is a servlet test.
------------------------------------------------------------------------------------------------------
希望这篇文章对大家有用
收笔