我对Java Servlet的认识
来源:互联网 发布:好看的网络剧排行榜 编辑:程序博客网 时间:2024/05/17 18:46
Servlet是Server applet的合成词。它是把Java语言编写的类使用在服务器上,服务于服务器的功能。与其等价的竞争对手是PHP、ASP.NET。
从狭义的编程角度来讲,Servlet是Java的一个API,使用它就可以开发服务器程序,程序中有许多个处理WEB请求的Servlet类。
从广义上讲,按照Sun公司要求的这样一种开发规则所写出的WEB项目,就是Java Servlet。
Servlet和JSP的区别:Servlet是把HTML写入到了Java代码里(只是作为字符串,仍然是纯Java语言,而JSP是把Java语言嵌入到了HTML里面。
Servlet的生命周期
1、用户访问某个URL
浏览器对该url产生一个HTTP request,该request发送到服务器端。
2、服务器端接受了这个request并且送到servlet container
这个container把这个request映射到一个预定的servlet上,然后该servlet被动态载入到container中。
3、container唤起该Servlet的init()函数。
该函数只有当该Servlet第一次载入内存时才执行,进行初始化操作。
4、container唤起该Servlet的service()函数。
该函数要负责处理用户发来的HTTP request,读取request中的数据、创建HTTP response。
5、Servlet之后会一直留在container的地址空间,以备随时使用。
container每映射给该Servlet一个HTTP request,它都会调用一次service()函数。
6、在一定情况下,container会要从它的空间中卸载掉某个Servlet,这时其destroy()函数会被调用。
下面是一个最基本的Servlet类:
import java.io.IOException; import javax.servlet.ServletConfig;import javax.servlet.ServletException;import javax.servlet.http.HttpServlet;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse; public class ServletLifeCycleExample extends HttpServlet { private int count; @Override public void init(ServletConfig config) throws ServletException { super.init(config); getServletContext().log("init() called"); count = 0; } @Override protected void service(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { getServletContext().log("service() called"); count++; response.getWriter().write("Incrementing the count: count = " + count); } @Override public void destroy() { getServletContext().log("destroy() called"); } }
0 0
- 我对Java Servlet的认识
- 我对java的认识
- 我对java的初步认识
- 我对Java内存的认识
- 我对Java内存的认识
- 我对Java内存的认识
- 我对java简单认识
- 我对接口的认识
- 我对程序设计的认识
- 我对程序的认识
- 我对USB的认识
- 我对人生的认识
- 我对j2ee的认识
- 我对USB的认识
- 我对USB的认识
- 我对大学的认识
- 我对Activity的认识
- 我对互联网的认识
- C++中Sort函数使用方法
- android 实战练习 回归手机卫士 一 主界面布局
- 特殊的二进制数
- 判断回文字符串
- Java位运算符详解
- 我对Java Servlet的认识
- Android实现简单移动动画
- Wireshark 捕获HTTP包的长度 与 IP包里的Total length有差异的原因
- 第四周-自动班作业及实验
- 在DNS服务器中添加MX,A记录
- ubuntu12.04 下的eclipse andriod环境配置
- 创新工场相关
- 大话设计模式之简单工厂模式
- BNU 1065