第一个Servlet总结
程序员文章站
2024-02-22 09:56:16
...
Servlet(Server Applet)是Java Servlet的简称,称为小服务程序或服务连接器,用Java编写的服务器端程序,主要功能在于交互式地浏览和修改数据,生成动态Web内容。
狭义的Servlet是指Java语言实现的一个接口,广义的Servlet是指任何实现了这个Servlet接口的类,一般情况下,人们将Servlet理解为后者。Servlet运行于支持Java的应用服务器中。从原理上讲,Servlet可以响应任何类型的请求,但绝大多数情况下Servlet只用来扩展基于HTTP协议的Web服务器。
最早支持Servlet标准的是JavaSoft的Java Web Server,此后,一些其它的基于Java的Web服务器开始支持标准的Servlet。
在J2EE中,Servlet的实现主要有三种方法,分别是实现Servlet接口,继承 GenericServlet类和继承HttpServlet类。由于是初学者,我选择实现Servlet接口的方式,这样对于了解底层的原理有所帮助吧。
Servlet类是由我们进行编写,但是对象是由服务器进行创建,而且Servlet中的5个方法有3个是生命周期方法,它们是由服务器进行调用的。
用的IDE是MyEclipse 10.6,Servlet代码如下:
import java.io.IOException;
import javax.servlet.Servlet;
import javax.servlet.ServletConfig;
import javax.servlet.ServletException;
import javax.servlet.ServletRequest;
import javax.servlet.ServletResponse;
public class MyFirstServlet implements Servlet {
/*
* 生命周期方法,服务器调用,在servlet被销毁之前调用(很少用到)
* @see javax.servlet.Servlet#destroy()
*/
@Override
public void destroy() {
System.out.println("destroy()...");
}
/*
* 获取servlet的配置信息
* @see javax.servlet.Servlet#getServletConfig()
*/
@Override
public ServletConfig getServletConfig() {
System.out.println("getServletConfig()...");
return null;
}
/*
* 获取服务器信息
* @see javax.servlet.Servlet#getServletInfo()
*/
@Override
public String getServletInfo() {
System.out.println("getServletInfo()...");
return null;
}
/*
* 生命周期方法,由服务器调用,在servlet创建时马上调用,只会执行一次
* @see javax.servlet.Servlet#init(javax.servlet.ServletConfig)
*/
@Override
public void init(ServletConfig servletConfig) throws ServletException {
System.out.println("init()...");
}
/*
* 生命周期方法,由服务器调用,对于每个请求执行一次
* @see javax.servlet.Servlet#service(javax.servlet.ServletRequest, javax.servlet.ServletResponse)
*/
@Override
public void service(ServletRequest request, ServletResponse response)
throws ServletException, IOException {
System.out.println("service()...");
}
}
接下来是将servlet布置到服务器上,让浏览器进行访问。
将servlet布置到服务器上是通过配置文件web.xml的方法:
浏览器访问的过程如下:
附web.xml的配置文本:
<?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.5"
xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">
<display-name></display-name>
<welcome-file-list>
<welcome-file>index.jsp</welcome-file>
</welcome-file-list>
<servlet>
<servlet-name>XXX</servlet-name>
<servlet-class>com.lzt.www.MyFirstServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>XXX</servlet-name>
<url-pattern>/myFirstServlet</url-pattern>
</servlet-mapping>
</web-app>
利用浏览器进行访问,没有出现404!成功了!
上一篇: java 分行读取实例
推荐阅读
-
第一个Servlet总结
-
使用Selenium WebDriver,Python和Chrome编写您的第一个Web测试
-
Docker docker部署以及运行你的第一个容器
-
Android开发之TextView控件用法实例总结
-
ASP.NET Web API(一):新建第一个项目和运行
-
记我的第一个安卓APP遇到的那些坑
-
在Bash脚本中创建和使用数组方法总结
-
个人总结—— HTML 篇 博客分类: web基础知识 webhtmlchrome
-
CXF HTTP Jetty5 To Jetty6 博客分类: Java SVNCometXP工作Servlet
-
Servlet,Listener和Filter如何获取ServletContext(既application) 博客分类: java语言相关 ServletWebSpring生活