Java Servlet 和 JSP入门教程(1)

转载 2007年09月23日 05:57:00
 

1 概述

1.1 Java Servlet及其特点

Servlet是Java技术对CGI编程的回答。Servlet程序在服务器端运行,动态地生成Web页面。与传统的CGI和许多其他类似CGI的技术相比,Java Servlet具有更高的效率,更容易使用,功能更强大,具有更好的可移植性,更节省投资(更重要的是, Servlet程序员收入要比Perl程序员高:-):

高效

在传统的CGI中,每个请求都要启动一个新的进程,如果CGI程序本身的执行时间较短,启动进程所需要的开销很可能反而超过实际执行时间。而在Servlet中,每个请求由一个轻量级的Java线程处理(而不是重量级的操作系统进程)。

在传统CGI中,如果有N个并发的对同一CGI程序的请求,则该CGI程序的代码在内存中重复装载了N次;而对于Servlet,处理请求的是N个线程,只需要一份Servlet类代码。在性能优化方面,Servlet也比CGI有着更多的选择,比如缓冲以前的计算结果,保持数据库连接的活动,等等。

; 方便

Servlet提供了大量的实用工具例程,例如自动地解析和解码HTML表单数据、读取和设置HTTP头、处理Cookie、跟踪会话状态等。

功能强大

在Servlet中,许多使用传统CGI程序很难完成的任务都可以轻松地完成。例如,Servlet能够直接和Web服务器交互,而普通的CGI程序不能。Servlet还能够在各个程序之间共享数据,使得数据库连接池之类的功能很容易实现。

可移植性好

Servlet用Java编写,Servlet API具有完善的标准。因此,为I-Planet Enterprise Server写的Servlet无需任何实质上的改动即可移植到Apache、Microsoft IIS或者WebStar?负跛?有的主流服务器都直接或通过插件支持Servlet。

节省投资

不仅有许多廉价甚至免费的Web服务器可供个人或小规模网站使用,而且对于现有的服务器,如果它不支持Servlet的话,要加上这部分功能也往往是免费的(或只需要极少的投资)。

1.2 JSP及其特点

JavaServer Pages(JSP)是一种实现普通静态HTML和动态HTML混合编码的技术,有关JSP基础概念的说明请参见《JSP技术简介 》。

许多由CGI程序生成的页面大部分仍旧是静态HTML,动态内容只在页面中有限的几个部分出现。但是包括Servlet在内的大多数CGI技术及其变种,总是通过程序生成整个页面。JSP使得我们可以分别创建这两个部分。例如,下面就是一个简单的JSP页面:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
<HEAD><TITLE>欢迎访问网上商店</TITLE></HEAD>
<BODY>
<H1>欢迎</H1>
<SMALL>欢迎,
<!-- 首次访问的用户名字为"New User" -->
<% out.println(Utils.getUserNameFromCookie(request)); %>
要设置帐号信息,请点击
<A HREF="Account-Settings.html">这里</A></SMALL>
<P>
页面的其余内容...
</BODY>&l t;/HTML>

下面是JSP和其他类似或相关技术的一个简单比较:

JSP和Active Server Pages(ASP)相比

Microsoft的ASP是一种和JSP类似的技术。JSP和ASP相比具有两方面的优点。首先,动态部分用Java编写,而不是VB Script或其他Microsoft语言,不仅功能更强大而且更易于使用。第二,JSP应用可以移植到其他操作系统和非Microsoft的Web服务器上。

JSP和纯Servlet相比

JSP并没有增加任何本质上不能用Servlet实现的功能。但是,在JSP中编写静态HTML更加方便,不必再用 println语句来输出每一行HTML代码。更重要的是,借助内容和外观的分离,页面制作中不同性质的任务可以方便地分开:比如,由页面设计专家进行HTML设计,同时留出供Servlet程序员插入动态内容的空间。

JSP和服务器端包含(Server-Side Include,SSI)相比

SSI是一种受到广泛支持的在静态HTML中引入外部代码的技术。JSP在这方面的支持更为完善,因为它可以??Servlet而不是独立的程序来生成动态内容。另外,SSI实际上只用于简单的包含,而不是面向那些能够处理表单数据、访问数据库的“真正的”程序。

JSP和_JavaScript相比

_JavaScript能够在客户端动态地生成HTML。虽然_JavaScript很有用,但它只能处理以客户端环境为基础的动态信息。除了Cookie之外,HTTP状态和表单提交数据对_JavaScript来说都是不可用的。另外,由于是在客户端运行,_JavaScript不能访问服务器端资源,比如数据库、目录信息等等。


 

Java之JSP和Servlet基础知识。

JSP,Java Server Pager的简称。由SUN倡导并联合其它公司创建。 JSP是一门脚本语言 JSP可以嵌入到HTML中 JSP拥有Java语言的所有特性 面向对象、健壮、多线程、安全、可...
  • ada_dengpan
  • ada_dengpan
  • 2016年06月24日 01:06
  • 8990

java中 servlet和jsp的概念及区别

林炳文Evankaka原创作品。转载请注明出处http://blog.csdn.net/evankaka 目录 一了解Servlet的概念二Servlet技术功能三 Servlet技术特点...
  • Forward__
  • Forward__
  • 2017年02月25日 13:05
  • 1722

JavaWeb--深入Servlet与JSP(运行原理)

复习复习!!!搞起来!!Servlet和JSP是Java EE规范最基本成员,他们是Java Web开发的重点知识,即使我们经常使用框架开发后端,但是我们还是很必要去理解他们的原理的。文章结构:(1)...
  • Jack__Frost
  • Jack__Frost
  • 2017年03月23日 21:33
  • 5578

JSP, Servlet常见面试题详解

JSP, Servlet常见面试题 1,J2EE是什么? 2EE是一套全然不同于传统应用开发的技术架构,包含许多组件,主要可简化且规范应用系统的开发与部署,进而提高可移植性、安全与再用价值。 2...
  • u011934553
  • u011934553
  • 2014年10月02日 10:16
  • 5564

一个完整的简单jsp+servlet实例,实现简单的登录

开发环境myeclipse+tomcat6 1、先创建web project,项目名为RegisterSystem, 2、在WebRoot 目录下创建login.jsp文件,只需修改body中的...
  • superit401
  • superit401
  • 2016年07月20日 23:42
  • 18504

[JSP]JSP基本元素以及和Servlet的对应关系

1. JSP页面是由JSP元素构成的:     1) 和HTML页面有标签构成的概念类似,元素是JSP构成的基本单位;     2) JSP的基本元素主要有6大类:指示元素、声明元素、Scriplet...
  • Lirx_Tech
  • Lirx_Tech
  • 2015年11月30日 21:56
  • 701

servlet和jsp交互的第一个典型例子

05.guess.jsp 百万富翁数字竞猜游戏
  • Tomsheng321
  • Tomsheng321
  • 2017年01月26日 13:05
  • 1330

JSP编译成Servlet(三)JSP编译后的Servlet

JSP编译后的Servlet类会是怎样的呢?他们之间有着什么样的映射关系?在探讨JSP与Servlet之间的关系时先看一个简单的HelloWorld.jsp编译成HelloWorld.java后会是什...
  • wangyangzhizhou
  • wangyangzhizhou
  • 2016年03月18日 16:55
  • 3300

JSP和Servlet面试题

1.讲下servlet的执行流程。 Servlet的执行流程也就是servlet的生命周期,当服务器启动的时候生命周期开始,然后通过init()《启动顺序根据web.xml里的startup-o...
  • t0404
  • t0404
  • 2016年07月12日 22:44
  • 8934

在Servlet中将javaBean对象传递到jsp页面中

1:jsp       登录页面                         用户名:                   密 ...
  • pangqiandou
  • pangqiandou
  • 2016年10月18日 16:00
  • 7028
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Java Servlet 和 JSP入门教程(1)
举报原因:
原因补充:

(最多只允许输入30个字)