java web.xml配置servlet

文件名:“SimpleServlet.java”

package cn.mldn.lxh.servlet;//定义包

import java.io.*;

//HttpServlet属于javax.servlet.http包下

//ServletException属于javax.servlet包下

import javax.servlet.*;//导入HttpServlet所属的包

//HttpServletRequest、HttpServletResponse存放在javax.servlet.http包下

importjavax.servlet.http.* ;

public class SimpleServlet extendsHttpServlet

{

// 表示处理get请求

public void doGet(HttpServletRequest req,HttpServletResponse resp)throws IOException,ServletException //抛出异常

{

PrintWriter out = resp.getWriter();//实例化out对象。

out.println("<HTML>");

out.println("<HEAD>");

out.println("<TITLE>THE FIRSTSERVLET</TITLE>") ;

out.println("</HEAD>");

out.println("<BODY>");

out.println("<H1>HelloWorld!!!</H1>") ;

out.println("</BODY>");

out.println("</HTML>");

out.close() ;

}

public void doPost(HttpServletRequest req,HttpServletResponse resp)throws IOException,ServletException

{

this.doGet(request,response) ;

}

};

///////////////////////////////////////////////////////////////////////////////////////////

JSP功能和servlet一致,也就是说servlet可以被外部访问,那么要访问它就需要通过一个地址,因此只有通过WEB的地址映射来解决了。

如何进行地址映射呢?

通过修改web.xml文件进行。

代码如下:

<servlet>

<servlet-name>simple</servlet-name>//我们定义的servlet应用名字

<servlet-class>cn.mldn.lxh.servlet.SimpleServlet</servlet-class>//我们定义的servlet应用名字对应的具体servlet文件

</servlet>

<servlet-mapping> //地址映射

<servlet-name>simple</servlet-name>//我们定义的servlet应用名字

<url-pattern>/demo</url-pattern>//地址名

</servlet-mapping>

////////////////////////////////////////////////////////////////////////////////////////////

进行地址映射目的是为了使用servlet,它的工作过程是:

工作过程:

输入地址:http://localhost:8080/ demo,通过它找到映射文件内部的文件名simple,通过simple找到对应的<servlet-name>simple</servlet-name>,然后定位到这个servlet文件:cn.mldn.lxh.servlet.SimpleServlet

由此可见,<servlet-name>simple</servlet-name>中的名字simple不一定一定要与servlet的文件名“SimpleServlet.java”一致,它只是在对web.xml文件配置的时候我们对servlet应用名字的定义,通过<servlet-class>cn.mldn.lxh.servlet.SimpleServlet</servlet-class>我们就可以定位到这个servlet文件。

同普通的工程一样,建立一个java程序,不过这个程序要 extendsServlet,而且没有主方法

public class HelloWorldServlet extends HttpServlet{

@SuppressWarnings("deprecation")
@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp)
throws ServletException, IOException {
resp.setContentType("text/html");
PrintWriter out = resp.getWriter();
out.println("<html><head><title>人数anjinbaliang</title></head>");
out.println("<body>baliang ai banjin ,it‘s right!"+new Date().toLocaleString()+"</body></html>");
out.flush();
}
}

在WebRoot->WEB-INF->web.xml内的最后一行的前面修改如下:

<servlet>
<servlet-name>HelloWorldServlet</servlet-name> //这个为servlet的类名
<servlet-class>MyEclipse.HelloWorldServlet</servlet-class> //完整的类名
</servlet>

<servlet-mapping>
<servlet-name>HelloWorldServlet</servlet-name> //这个同上面的第一个一样,为servlet的类名
<url-pattern>/HelloWorldServlet</url-pattern> // 一定要有一个/ 加上类名 这个对于的是网址中文件夹/test后面的子目录,通过这个对应得到上面servlet-name的名字,HelloWorldServlet,再通过这个名字得到<servlet>内的<servlet-name>(与子对应关系),从而得到<servlet-class>实例化出一个MyEclipse.HelloWorldServlet类

</servlet-mapping>

</web-app>//最后一行

时间: 2024-11-07 09:35:42

java web.xml配置servlet的相关文章

java web.xml listener servlet 和filter的加载顺序

在项目中总会遇到一些关于加载的优先级问题,近期也同样遇到过类似的,所以自己查找资料总结了下,下面有些是转载其他人的,毕竟人家写的不错,自己也就不重复造轮子了,只是略加点了自己的修饰. 首先可以肯定的是,加载顺序与它们在 web.xml 文件中的先后顺序无关.即不会因为 filter 写在 listener 的前面而会先加载 filter. 最终得出的结论是:listener -> filter -> servlet 同时还存在着这样一种配置节:context-param,它用于向 Servle

Java web.xml 配置技巧—动态欢迎页地址--欺骗tomcat

我们的Java Web项目在配置web.xml 欢迎页地址默认是index.html .index.jsp ,不知道有人注意过没有,如果我要配置成/index/user.action  或者 /userList.do 什么的怎么办呢?你可能觉得直接配置就OK了,我告诉你不行.如果可以,你可以忽略本方法.下面讲讲如果不能配置动态地址,怎么办. 配置如下: <welcome-file-list> <welcome-file>/user/index.shtml</welcome-f

eclipse环境Dynamic web module version 3.1版本的进步,简化Dynamic web object 中Servlet类的配置,不用web.xml配置&lt;Servlet&gt;

eclipse环境Dynamic web module version 3.1版本之前,Dynamic web object 中Servlet类的配置,要在web.xml 配置<Servlet>图片和代码如下: web.xml中源代码如下: <?xml version="1.0" encoding="UTF-8"?><web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-ins

java web.xml配置详解

1.启动一个WEB项目的时候,WEB容器会去读取它的配置文件web.xml,读取<listener>和<context-param>两个结点. 2.紧急着,容创建一个ServletContext(servlet上下文),这个web项目的所有部分都将共享这个上下文. 3.容器将<context-param>转换为键值对,并交给servletContext. 4.容器创建<listener>中的类实例,创建监听器. 二  Load-on-startup Load

Java web.xml 配置详解

在项目中总会遇到一些关于加载的优先级问题,近期也同样遇到过类似的,所以自己查找资料总结了下,下面有些是转载其他人的,毕竟人家写的不错,自己也就不重复造轮子了,只是略加点了自己的修饰. 首先可以肯定的是,加载顺序与它们在 web.xml 文件中的先后顺序无关.即不会因为 filter 写在 listener 的前面而会先加载 filter.最终得出的结论是:listener -> filter -> servlet 同时还存在着这样一种配置节:context-param,它用于向 Servlet

web.xml配置servlet

Web.xml常用元素 <web-app> <display-name></display-name>  定义了WEB应用的名字 <description></description>  声明WEB应用的描述信息 <context-param></context-param>  context-param元素声明应用范围内的初始化参数. <filter></filter>  过滤器元素将一个名字与一

关于SpringMVC中web.xml配置servlet和filter中url-pattern参数的

<servlet><servlet-name>dispatcherServlet</servlet-name><servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class><init-param><param-name>contextConfigLocation</param-name><param-valu

初学servlet之使用web.xml配置

先写两个servlet,之后展示web.xml配置 package app01c; 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.HttpSe

Spring MVC的web.xml配置详解(转)

出处http://blog.csdn.net/u010796790 1.spring 框架解决字符串编码问题:过滤器 CharacterEncodingFilter(filter-name) 2.在web.xml配置监听器ContextLoaderListener(listener-class) ContextLoaderListener的作用就是启动Web容器时,自动装配ApplicationContext的配置信息.因为它实现了ServletContextListener这个接口,在web.