Java Servlet

✍ dations ◷ 2025-12-05 10:35:21 #Java Servlet

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。

一般来说,通用Servlet由javax.servlet.GenericServlet实现Servlet接口。程序设计人员可以通过使用或继承这个类来实现通用Servlet应用。

javax.servlet.http.HttpServlet实现了专门用于响应HTTP请求的Servlet,提供了响应对应HTTP标准请求的doGet()、doPost()等方法。

当servlet被部署在应用服务器中(应用服务器中用于管理Java组件的部分被抽象成为容器)以后,由容器控制servlet的生命周期。除非特殊指定,否则在容器启动的时候,servlet是不会被加载的,servlet只会在第一次请求的时候被加载和实例化。servlet一旦被加载,一般不会从容器中删除,直至应用服务器关闭或重新启动。但当容器做存储器回收动作时,servlet有可能被删除。也正是因为这个原因,第一次访问servlet所用的时间要大大多于以后访问所用的时间。

servlet在服务器的运行生命周期为,在第一次请求(或其实体被内存垃圾回收后再被访问)时被加载并执行一次初始化方法,跟着执行正式运行方法,之后会被常驻并每次被请求时直接执行正式运行方法,直到服务器关闭或被清理时执行一次销毁方法后实体销毁。

Java服务器页面(JSP)是HttpServlet的扩展。由于HttpServlet大多是用来响应HTTP请求,并返回Web页面(例如HTML、XML),所以不可避免地,在编写servlet时会涉及大量的HTML内容,这给servlet的书写效率和可读性带来很大障碍,JSP便是在这个基础上产生的。其功能是使用HTML的书写格式,在适当的地方加入Java代码片段,将程序员从复杂的HTML中解放出来,更专注于servlet本身的内容。

JSP在首次被访问的时候被应用服务器转换为servlet,在以后的运行中,容器直接调用这个servlet,而不再访问JSP页面。JSP的实质仍然是servlet。

相关

  • 呼吸短促呼吸困难(拉丁语:Dyspnea或Dyspnoea)、呼吸急促或空气饥是患者一种自觉症状,病人一般可自己觉察到呼吸困难,但外界不易观察出来。一般而言重体力劳动等带来的呼吸困难是正常症状,
  • 停车停车(Parking),是交通活动,也是一项常见的商业服务。司机把轿车、单车等停泊在马路、停车场等停车位。如此生活所需,有免费,也有需要付费的服务。在地产发展项目中,停车位的多少及
  • 药用胰岛素胰岛素(英语:Insulin)是用胰岛素或胰岛素类似物制成的蛋白质类药物。药用胰岛素有很多种,包括速效型(如门冬胰岛素)和长效性(如地特胰岛素)等。胰岛素可以治疗多种疾病,包括糖尿病和
  • 麦克·道格拉斯迈克尔·柯克·道格拉斯(英语:Michael Kirk Douglas,1944年9月25日-),犹太人,美国好莱坞知名一线电影演员和制片人,奥斯卡最佳男主角奖得主。他的父亲是美国著名演员柯克·道格拉斯
  • 奇洞站奇洞站(朝鲜语:기동역/奇洞驛  */?)曾为韩国铁路长项线上的一个车站,位于忠清南道舒川郡锺川面,已于1945年废止。
  • 弗雷德·海因斯弗雷德·海因斯(英语:Fred Hynes)为一位美国音讯工程师。他曾赢得了5次奥斯卡最佳音响效果奖,并在这个奖项上获得了2次提名。约翰逊曾赢得了5次奥斯卡最佳音响效果奖,并获得2次提
  • 季卫东季卫东(1957年-),江西南昌人,中国法学家,主要研究领域为法社会学、比较法学、中国法与政治。现任上海交通大学凯原法学院讲习教授、院长。1983年取得北京大学法学学士,后留学日本,取
  • 哈利勒 (人名)哈利勒(英语:Khalil或Khaleel,阿拉伯语:خليل‎),在阿拉伯语中意为“朋友”,是中东、北非、中亚、南亚、印度尼西亚和巴尔干半岛常见的名字,也是一个常见姓氏。以下的名字均可译
  • 阿尔乔姆·伊万诺维奇·米高扬阿尔乔姆·伊万诺维奇·米高扬(亚美尼亚语:Արտյոմ Հովհաննեսի Միկոյան,俄语:Артём Ива́нович Микоя́н;1905年8月5日-1970年12月9日)
  • 詹姆斯·迪恩詹姆斯·迪恩(英语:James Deen,1986年2月7日-)是一名18歳就开始演出成人片的著名美国色情演员。据iafd的统计,詹姆斯·迪恩至今已拍超过1400部成人电影且导演过11部成人电影。此外