WEB开发基础之Servlet和JSP

合集下载

(高级版)菜鸟教程JSP入门到精通

(高级版)菜鸟教程JSP入门到精通

JSP 简介什么是Java Server Pages?JSP全称Java Server P ages,是一种动态网页开发技术。

它使用JSP标签在HTML网页中插入Java代码。

标签通常以<%开头以%>结束。

JSP是一种Java servlet,主要用于实现Java web应用程序的用户界面部分。

网页开发者们通过结合HTML代码、XHTML 代码、XML元素以及嵌入JSP操作和命令来编写JSP。

JSP通过网页表单获取用户输入数据、访问数据库及其他数据源,然后动态地创建网页。

JSP标签有多种功能,比如访问数据库、记录用户选择信息、访问JavaBeans组件等,还可以在不同的网页中传递控制信息和共享信息。

为什么使用JSP?JSP程序与CGI程序有着相似的功能,但和CGI程序相比,JSP程序有如下优势:∙性能更加优越,因为JSP可以直接在HTML网页中动态嵌入元素而不需要单独引用CGI文件。

∙服务器调用的是已经编译好的JSP文件,而不像CGI/P erl那样必须先载入解释器和目标脚本。

∙JSP基于Java Servlets AP I,因此,JSP拥有各种强大的企业级Java AP I,包括JDBC,JNDI,E JB,JAXP等等。

∙JSP页面可以与处理业务逻辑的servlets一起使用,这种模式被Java servlet 模板引擎所支持。

最后,JSP是Java E E不可或缺的一部分,是一个完整的企业级应用平台。

这意味着JSP可以用最简单的方式来实现最复杂的应用。

JSP的优势以下列出了使用JSP带来的其他好处:∙与ASP相比:JSP有两大优势。

首先,动态部分用Java编写,而不是VB或其他MS专用语言,所以更加强大与易用。

第二点就是JSP易于移植到非MS平台上。

∙与纯Servlets相比:JSP可以很方便的编写或者修改HTML网页而不用去面对大量的println语句。

∙与SSI相比:SSI无法使用表单数据、无法进行数据库链接。

Java Web编程实战宝典(JSP+Servlet+Struts 2+Hibernate+Spri

Java Web编程实战宝典(JSP+Servlet+Struts 2+Hibernate+Spri

20.2 掌握HQL和SQL技术
20.4 实战练习
21.1 什么是事务
21.3 应用查询缓存 (Query Cache)
21.5 学习过滤器
第3篇 Hibernate篇
21 Hibernate的高级技术
21.2 学习锁(Locking) 21.4 学习拦截器和事件
21.6 小结
第3篇 Hibernate 篇
3.4 其他客户端技术
3.6 学习AJAX技术
第1篇 Web开发基础篇
3.7 小 结
3.8 实 战练习
3 Web开发必会的客户端技 术
4.1 编写Servlet的 Helloworld程序 4.3 掌握
HttpServletResponse类
4.5 处理Cookie
第1篇 Web开发基础篇
4 Java Web的核心技术——Servlet
6.7 实战练习
第2篇 Struts 2篇
02
第2篇 Struts 2篇
7 编写Struts 2第一个程序
10 Struts 2的 类型转换
8 Struts 2进 阶
11 Struts 2的 输入校验
9 Struts 2的 拦截器
12 文件的上传 和下载
第2篇 Struts 2篇
14 Struts 2的标 签库
1.12 实战练习
1.11 小结
第1篇 Web开发基础篇
1 搭建开发环境
1.8 在Eclipse IDE for Java EE Developers中配置 Tomcat
1.9 下载与安装MySQL 5数据库
1.10 下载与安装数据库 客户端软件SQLyog
2.1 Web技术的发展

java web笔记

java web笔记

java web笔记JavaWeb是一种基于Java语言开发的Web应用程序开发技术,其主要模块包括Servlet、JSP、JavaBean以及Java EE(Enterprise Edition)等。

1. ServletServlet是一种Java程序,用于处理HTTP请求和响应。

它可以接收来自客户端的HTTP请求并生成HTTP响应。

Servlet实现了javax.servlet.Servlet接口,可以在Web容器中运行。

Servlet可以通过doGet()、doPost()等方法处理HTTP请求,通过request对象获取请求参数,通过response对象生成响应内容。

Servlet还可以通过init()方法进行初始化,通过destroy()方法进行终止。

2. JSPJSP是Java Server Pages的缩写,它是一种基于HTML和Java 的Web开发技术。

JSP可以将Java代码嵌入到HTML页面中,以便动态生成Web页面。

JSP页面可以使用JavaBean来处理业务逻辑,在JSP中使用标签库可以简化开发,如JSTL标签库、EL表达式等。

3. JavaBeanJavaBean是一种Java类,它封装了应用程序中的数据和业务逻辑。

JavaBean通常包含get/set方法,可以通过这些方法访问和修改JavaBean中的属性。

JavaBean的作用是将数据和业务逻辑分离,使得应用程序具有更高的可维护性和可重用性。

4. Java EEJava EE是Java平台的企业版,它提供了一系列API和规范,用于开发大型分布式Web应用程序。

Java EE包含了Servlet、JSP、JavaBean等技术,还提供了EJB(Enterprise Java Bean)、JPA(Java Persistence API)、JMS(Java Message Service)等高级技术。

Java EE还包含了Web容器和应用服务器,如Tomcat、WebLogic、WebSphere等,这些容器可以运行Java Web程序,提供了对Java Web 程序的支持和管理。

Jsp和Servlet关系

Jsp和Servlet关系

Jsp和Servlet关系为什么会出现Jsp?其实对于服务器来说它只认识Servlet,我们完全可以在Servlet⽤resp.getWriter().write("");画出⽹页的界⾯,但是仅仅⼀个很简单的界⾯就要重复的书写resp.getWriter().write(""),并且这还没有加上js、css以及jquery。

但是我们在Servlet写的是java代码可以有逻辑的判断,但是在html、css中⽆法加⼊逻辑导致页⾯是静态的。

为了解决这⼀问题出现了jsp,在jsp中可以书写Java代码、js代码、html代码等。

我们都知道浏览器发送请求到服务器,服务器通过解析其中Servlet的别名找到对应的Servlet并执⾏其中的service⽅法做出处理和响应,那么对于服务器来说它只认识Servlet,那么我们编辑的Jsp到底是如何被服务器识别的?实际上服务器还是将.jsp当作Servlet的别名在你局部配置下的web.xml找有没有对应的Servlet,如果没有找到对应的Servlet就去Tomcat的公共配置下的web.xml(Tomcat安装⽬录conf下的web.xml)找对应的Servlet。

会找到如下内容:org.apache.jasper.servlet.JspServlet将对应的jsp⽂件转为Servlet。

那么转的Servlet在什么地⽅呢?打开Tomcat下的work⽂件夹⼀直点到:找你正在运⾏的项⽬的jsp测试的jsp:<%@ page language="java" contentType="text/html; charset=utf-8"pageEncoding="utf-8"%><!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "/TR/html4/loose.dtd"><html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Insert title here</title></head><body>666</body></html> 被编译好的Java⽂件:/** Generated by the Jasper component of Apache Tomcat* Version: Apache Tomcat/8.5.46* Generated at: 2019-10-16 09:05:10 UTC* Note: The last modified time of this file was set to* the last modified time of the source file after* generation to assist with modification tracking.*/package org.apache.jsp;import javax.servlet.*;import javax.servlet.http.*;import javax.servlet.jsp.*;public final class index_jsp extends org.apache.jasper.runtime.HttpJspBaseimplements org.apache.jasper.runtime.JspSourceDependent,org.apache.jasper.runtime.JspSourceImports {private static final javax.servlet.jsp.JspFactory _jspxFactory =javax.servlet.jsp.JspFactory.getDefaultFactory();private static java.util.Map<ng.String,ng.Long> _jspx_dependants;private static final java.util.Set<ng.String> _jspx_imports_packages;private static final java.util.Set<ng.String> _jspx_imports_classes;static {_jspx_imports_packages = new java.util.HashSet<>();_jspx_imports_packages.add("javax.servlet");_jspx_imports_packages.add("javax.servlet.http");_jspx_imports_packages.add("javax.servlet.jsp");_jspx_imports_classes = null;}private volatile javax.el.ExpressionFactory _el_expressionfactory;private volatile org.apache.tomcat.InstanceManager _jsp_instancemanager;public java.util.Map<ng.String,ng.Long> getDependants() {return _jspx_dependants;}public java.util.Set<ng.String> getPackageImports() {return _jspx_imports_packages;}public java.util.Set<ng.String> getClassImports() {return _jspx_imports_classes;}public javax.el.ExpressionFactory _jsp_getExpressionFactory() {if (_el_expressionfactory == null) {synchronized (this) {if (_el_expressionfactory == null) {_el_expressionfactory = _jspxFactory.getJspApplicationContext(getServletConfig().getServletContext()).getExpressionFactory();}}}return _el_expressionfactory;}public org.apache.tomcat.InstanceManager _jsp_getInstanceManager() {if (_jsp_instancemanager == null) {synchronized (this) {if (_jsp_instancemanager == null) {_jsp_instancemanager = org.apache.jasper.runtime.InstanceManagerFactory.getInstanceManager(getServletConfig());}}}return _jsp_instancemanager;}public void _jspInit() {}public void _jspDestroy() {}public void _jspService(final javax.servlet.http.HttpServletRequest request, final javax.servlet.http.HttpServletResponse response)throws java.io.IOException, javax.servlet.ServletException {final ng.String _jspx_method = request.getMethod();if (!"GET".equals(_jspx_method) && !"POST".equals(_jspx_method) && !"HEAD".equals(_jspx_method) && !javax.servlet.DispatcherType.ERROR.equals(request. response.sendError(HttpServletResponse.SC_METHOD_NOT_ALLOWED, "JSPs only permit GET POST or HEAD");return;}final javax.servlet.jsp.PageContext pageContext;javax.servlet.http.HttpSession session = null;final javax.servlet.ServletContext application;final javax.servlet.ServletConfig config;javax.servlet.jsp.JspWriter out = null;final ng.Object page = this;javax.servlet.jsp.JspWriter _jspx_out = null;javax.servlet.jsp.PageContext _jspx_page_context = null;try {response.setContentType("text/html; charset=ISO-8859-1");pageContext = _jspxFactory.getPageContext(this, request, response,null, true, 8192, true);_jspx_page_context = pageContext;application = pageContext.getServletContext();config = pageContext.getServletConfig();session = pageContext.getSession();out = pageContext.getOut();_jspx_out = out;out.write("\r\n");out.write("<!DOCTYPE html PUBLIC \"-//W3C//DTD HTML 4.01 Transitional//EN\" \"/TR/html4/loose.dtd\">\r\n");out.write("<html>\r\n");out.write("<head>\r\n");out.write("<meta http-equiv=\"Content-Type\" content=\"text/html; charset=ISO-8859-1\">\r\n");out.write("<title>Insert title here</title>\r\n");out.write("</head>\r\n");out.write("<body>\r\n");out.write("666\r\n");out.write("</body>\r\n");out.write("</html>");} catch (ng.Throwable t) {if (!(t instanceof javax.servlet.jsp.SkipPageException)){out = _jspx_out;if (out != null && out.getBufferSize() != 0)try {if (response.isCommitted()) {out.flush();} else {out.clearBuffer();}} catch (java.io.IOException e) {}if (_jspx_page_context != null) _jspx_page_context.handlePageException(t);else throw new ServletException(t);}} finally {_jspxFactory.releasePageContext(_jspx_page_context);}}}但是我们发现这个类并没有继承HttpServlet⽽是继承了org.apache.jasper.runtime.HttpJspBase并且⾥⾯也没有service⽅法⽽是_jspservice⽅法。

javaweb概述

javaweb概述

javaweb概述JavaWeb是指使用Java语言开发的Web应用程序。

它是一种基于Java技术的Web开发框架,可以用于构建各种类型的Web应用程序,如电子商务平台、社交媒体应用、在线教育平台等。

JavaWeb的核心技术包括Java Servlet、JavaServer Pages(JSP)、JavaServer Faces(JSF)和JavaBeans。

其中,Java Servlet是处理HTTP请求和响应的Java程序,可以接收客户端的请求并生成响应。

JSP是一种在HTML中嵌入Java代码的技术,用于动态生成页面内容。

JSF是一种基于组件的Web框架,可以简化用户界面的开发。

JavaBeans是可重用的Java组件,用于处理业务逻辑。

使用JavaWeb开发Web应用程序的过程中,通常会使用一些开发工具和框架,如Eclipse、IntelliJ IDEA、Spring和Hibernate。

这些工具和框架可以提高开发效率,减少代码量,并提供一些常用功能的封装。

例如,Spring框架提供了依赖注入和面向切面编程的支持,使得开发者可以更容易地管理对象之间的依赖关系和处理横切关注点。

Hibernate框架则可以简化与数据库的交互操作,提供了对象关系映射(ORM)的功能。

在开发JavaWeb应用程序时,需要遵循一些开发规范和最佳实践。

例如,需要使用MVC(Model-View-Controller)架构模式对应用程序进行组织,将业务逻辑、用户界面和数据访问逻辑分离开来,提高代码的可维护性和可测试性。

此外,还需要考虑安全性和性能优化等方面的问题。

例如,可以通过使用HTTPS协议进行数据传输加密,使用缓存技术减少数据库的访问次数,使用CDN加速静态资源的加载等。

JavaWeb应用程序通常部署在Web服务器上,如Apache Tomcat、Jetty等。

Web服务器负责接收客户端的请求,并将请求转发给相应的Java Servlet进行处理。

java总结

java总结

1、Servlet与JSP有什么区别?Servlet和JSP完成的功能是相同的,都可以接收用户的请求,可以对用户进行响应,可以调用业务方法。

不同点在于JSP是在html或者xml中嵌入了Java代码或者JSP的标记,在制作页面方面具有优势,可以使用网页编辑工具来制作网页,然后嵌入Java或者JSP的标记。

Servlet是纯Java代码,通常用于控制,不用于输出。

在MVC模式中,JSP通常充当视图,Servlet通常充当控制器。

另外,JSP 在运行的时候还要转换成类似于Servlet的Java代码。

2、Servelt通常有哪些方法init方法,完成初始化service方法,包括doGet和doPost,用于接收用户的请求,调用后台的JavaBean或者EJB,选择界面对用户响应。

destroy方法,用于释放资源3、谈谈Servlet的生命周期当接收到请求的时候,容器察看对应的Servlet对象是否存在,如果不存在,需要加载Servetl,实例化Servlet,调用init方法进行初始化。

如果已经存在,根据用户的请求创建request和response对象,把这两个对象作为参数调用Servlet对象的service方法,Servlet通过这个方法与用户进行交互,方法执行完之后,对请求的处理结束。

Servelt对象继续等待下一个请求。

当应用卸载的时候,调用destroy 方法释放资源。

多个请求共享Servelt对象。

4、Servlet API的两个主要包javax.servlet.*;javax.servlet.http.*;5、编写Servlet需要继承的类是什么?HttpServlet6、编写Servlet通常需要实现的两个方法是什么?doGet方法和doPost方法7、doGet方法和doPost方法中的两个参数是什么?HttpServletRequest和HttpServletResponse,前者封装了与请求相关的信息,后者封装了与响应相关的信息。

JSP介绍

JSP介绍

JSP简介一、JSP介绍JSP全名为Java Server Pages,中文名叫java服务器页面,其根本是一个简化的Servlet设计。

JSP是SUN公司推出的,是J2EE(Java 2 Enterprise Edition,Java2企业版)十三种核心技术中最重要的一种。

JSP是基Java 语言的一种Web应用开发技术,利用这一技术可以建立安全、跨平台的先进动态网站。

如今,许多著名的Web网站都使用了JSP技术。

二、JSP技术概述JSP技术有点类似ASP技术,它是在传统的网页HTML文件中插入Java程序段和JSP 标记,从而形成JSP文件,后缀名为(*.jsp)。

用JSP开发的Web应用是跨平台的,既能在Linux下运行,也能在其他操作系统上运行。

它实现了Html语法中的java扩展(以<%, %>形式)。

JSP与Servlet一样,是在服务器端执行的。

通常返回给客户端的就是一个HTML文本,因此客户端只要有浏览器就能浏览。

JSP技术使用Java编程语言编写类XML的tags和scriptlets,来封装产生动态网页的处理逻辑。

网页还能通过tags和scriptlets访问存在于服务端的资源的应用逻辑。

JSP 将网页逻辑与网页设计的显示分离,支持可重用的基于组件的设计,使基于Web的应用程序的开发变得迅速和容易。

JSP是一种动态页面技术,它的主要目的是将表示逻辑从Servlet中分离出来。

Java Servlet是JSP的技术基础,而且大型的Web应用程序的开发需要Java Servlet 和JSP配合才能完成。

JSP具备了Java技术的简单易用,完全的面向对象,具有平台无关性且安全可靠,主要面向因特网的所有特点。

作为一种基于文本的、以显示为中心的开发技术,JSP以Java Servlet为基础,提供了Java Servlet的所有优点,并且当与一个JavaBeans类结合在一起时,提供了一种使内容和显示逻辑分开的简单方式。

《JavaWeb课件:Servlet知识点详解》

《JavaWeb课件:Servlet知识点详解》
Servlet是Java Web中的一种 技术,它是一个服务端的Java 程序,可以接收和响应HTTP 请求。
Servlet的作用
通过Servlet,服务器可以根据 请求来生成响应结果进行返回, 从而实现服务器端的程序处理。
Java环境和Web容器
在使用Servlet之前,需要具备 基本的Java编程能力,并且需 要使用Web容器来提供Servlet 服务。
《Java Web课件:Servlet 知识点详解》
本课件详细讲解Java Web开发中的Servlet,包括基本概念、请求与响应、生 命周期、注解与配置、会话管理、过滤器与监听器及相关案例。
认识Servlet
Java Web课件
Java Web是使用Java技术进 行网络编程的一种方式。
Servlet是什么?
过滤器可以在HTTP请求到达目标资源之前,预先过滤一些请求,可以进行请求内 容的修改和重写。
2 过滤器的使用
在web.xml配置文件中,定义过滤器的名称、URL模式等,也可以使用注解等方 式进行配置和使用。
3 监听器的作用
监听器可以用于监视Servlet容器的一些状态和行为,如Session的创建和销毁等。
Servlet的生命周期
初始化过程
在Servlet被创建后,容器会自动调用init()方法,并传进一个ServletConfig对象。
服务处理过程
一旦容器调用了Servlet的init()方法,就可以接收请求并处理请求,此时Servlet实例会处于多个状态之 下。
销毁过程
Servlet实例会在某个时刻被销毁,此时容器会调用Servlet实例的destroy()方法。
Servlet的重定向和转发
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
-4-
out.println( "大家好" ); out.println( "</body>" ); out.println( "</html>" ); out.close(); }
// Get Servlet information public String getServletInfo() {
// 初始化全局变量 public void init( ServletConfig config ) throws ServletException {
super.init( config ); }
这个例子中,一开始和 Applet 一样,也有 init()的方法。当 Servlet 被 Container(容器,后面会提到)加载后, 接下来就会先执行 init()的内容,因此,我们通常利用 init()来执行一些初始化的工作。
-2-
基于 Java 语言的 Servlet/JSP 能够完全发挥 Java API 的威力,包括网络和 URL 存取、多线程(Multi-Thread)、 影像处理、RMI(Remote Method Invocation)、分布式服务器组件(Enterprise Java Bean)、对象序列化(Object Serialization)等。若想写个网络目录查询程序,则可利用 JNDI API;想连接数据库,则可利用 JDBC。
3.性能 Servlet/JSP 在加载执行之后,其对象实体(instance)通常会一直停留在 Server 的内存中,若有请求(request) 发生时,服务器再调用 Servlet 来服务,假若收到相同服务的请求时,Servlet 会利用不同的线程来处理,不像 CGI 程序必须产生许多进程(process)来处理数据。在性能的表现上,大大超越以往的 CGI 程序。最后补充一点, 那就是 Servlet 在执行时,不是一直停留在内存中,服务器会自动将停留时间过长一直没有执行的 Servlet 从内存 中移除,不过有时候也可以自行写程序来控制。至于停留时间的长短通常和选用的服务器有关。 4.安全性 Servlet 有类型检查(Type Checking)的特性,并且利用 Java 的垃圾收集(Garbage Collection)与没有指针的设 计,使得 Servlet 避免内存管理的问题。由于பைடு நூலகம் Java 的异常处理(Exception-Handling)机制下,Servlet 能够安全 地处理各种错误,不会因为发生程序上逻辑错误而导致整体服务器系统的毁灭。例如:某个 Servlet 发生除以零 或其他不合法的运算时,它会抛出一个异常(Exception)让服务器处理,如:记录在记录文件中(log file)。
IOException {
response.setContentType( "text/html;charset=GB2312" ); PrintWriter out = response.getWriter(); out.println( "<html>" ); out.println( "<head><title>CH2 - HelloServlet</title></head>" ); out.println( "<body>" ); out.println( "Hello Servlet <br>" );
//处理Get请求 public void doGet( HttpServletRequest request , HttpServletResponse response ) throws ServletException ,
IOException {
-5-
response.setContentType( "text/html;charset=GB2312" ); PrintWriter out = response.getWriter(); out.println( "<html>" ); out.println( "<head><title>CH2 - HelloServlet</title></head>" ); out.println( "<body>" ); out.println( "Hello Servlet <br>" ); out.println( "大家好" ); out.println( "</body>" ); out.println( "</html>" ); out.close(); }
package com.abchina.sample;
HelloServlet.java
import javax.servlet.*; import javax.servlet.http.*; import java.io.*;
public class HelloServlet extends HttpServlet {
1.3. HTTP 协议以及请求/响应模式
HTTP 协议( HyperText Transfer Protocol)是 Internet 众多协议中的一种,表示超文本传输协议,它构成了 WWW 的基础。它具有简单快速、灵活、无状态、无连接等特点。它是采用基于请求(Request)和响应(Response) 模式。其工作过程如下:
WEB 开发基础之 Servlet 和 JSP
-1-
第 1 篇. 概述篇
1.1. Java Web 技术概述
网络将世界联系在一起,使世界变得更加丰富多彩。同时网络互连是一个内容丰富而复杂的主题,所以这方 面的程序设计涉及面很广且不易掌握。本文主要讲述 Web 开发技术中 Java 平台的 Servlet 和 JSP 技术。Servlet 和 JSP 技术是浏览器能够使程序在服务器上运行的一种技术。它由服务器执行必要的运算处理,如访问数据库, 最终把 HTML 输出回送给客户端上的浏览器。这也是所有的基于 Web 的系统采用的一种体系结构。他们的最终 用户界面均采用 Web 浏览器,而后台业务逻辑则在服务器上运行。
// 初始化全局变量 public void init( ServletConfig config ) throws ServletException {
super.init( config ); }
//处理Get请求 public void doGet( HttpServletRequest request , HttpServletResponse response ) throws ServletException ,
-3-
第 2 篇. Servlet 篇
2.1. 感性认识 Servlet:第一个 Servlet 例子
提出问题:写一个 Servlet,生成 HTML 页面,向用户显示一些欢迎信息。
解决方法:继承 HttpServlet 类,覆盖 doGet()或 doPost()方法。
具体解决方案: Servlet 是 java 语 言 类 , 用 来 拓 展 通 过 请 求 响 应 模 式 的 服 务 端 的 能 力 。 所 有 的 servlets 都 必 须 实 现 javax.servlet.Servlet 接口,它定义了生命周期方法。Servlet 编写者可以通过直接实现 javax.servlet.Servlet 开发 Servlet。实际上,大多数 Servlet 是针对用 HTTP 协议的 Web 服务器,这样最通用开发 Servlet 办法是继承 javax.servlet.http.HttpServlet,实现具体的 Servlet。 HttpServlet 类提供了一些方法,如 doGet()及 doPost(),用来处理特定的 HTTP 服务。 下面完成这个 Servlet 的例子。
return "com.abchina.sample.HelloSerlvet Information"; } //结束时做销毁工作 public void destroy() {
// ………… // ………….// Servlet 结束时,会自动调用执行的程序 // …………. } }
一开始我们必须导入(import)javax.servlet.*、javax.servlet.http.*。 javax.servlet.*:存放与 HTTP 协议无关的一般性 Servlet 类; javax.servlet.http.*:除了继承 javax.servlet.*之外,并且还增加与 HTTP 协议有关的功能。 所有 Servlet 都必须实现 javax.servlet.Servlet 接口(Interface),但是通常我们都会从 javax.servlet.GenericServlet 或 javax.servlet.http.HttpServlet 择一来实现。若写的 Servlet 程序和 HTTP 协议无关,那么必须继承 GenericServlet 类;若有关,就必须继承 HttpServlet 类。 javax.servlet.*里的 ServletRequest 和 ServletResponse 接口提供存取一般的请求和响应;而 javax.servlet.http.* 里的 HttpServletRequest 和 HttpServletResponse 接口,则提供 HTTP 请求及响应的存取服务。
普通的 HTML 页面是静态的,服务器每次送回 HTML 页面时,显示的都是完全相同的内容。而改变这一种 状况的惟一方法是当有人利用编辑程序更新了 HTML 文件。在现实情况中,许多信息都是动态变化的,如股票 价格、天气情况、航班座位、库存数量、帐户余额以及联机购物车内容等。Servlet 和 JSP 恰好是能够把动态信息 更新到网页上的最佳方法。用户看到的网页是能够访问和更新数据库的通用程序根据用户的请求,经过加工处理 后提供给用户的内容。
相关文档
最新文档