【学习提示】 Servlet使用out对象的println(?)方法输出HTML代码,这种方式不仅繁琐、工作量大而且容易出错。为此,Sun公司在Java语言基础上开发出JSP,用于简化Web开发人员的工作。JSP和Servlet的本质是一样的。JSP最终必须编译成Servlet才能运行。JSP比较简单,它的特点是在HTML页面中嵌入Java代码片段,或使用各种JSP标签,包括用户自定义的标签,从而可以动态地提供页面内容。 早期使用JSP页面的用户非常广泛,一个Web应用可以全部由JSP页面组成,只辅以少量的JavaBean即可。自从Java EE标准出现以后,人们逐渐认识到使用JSP充当过多的角色是不合适的。因此,JSP如今发展成单一的表现层技术,不再承担业务逻辑组件及持久层组件的功能。本章主要讲解JSP的基本语法、指令标签和动作标签的使用方法。 JSP(Java Server Pages)是由Sun Microsystems公司倡导、许多公司参与一起建立的一种动态网页技术标准。JSP技术类似于微软公司的ASP(Active Server Page)技术,是将小段的Java程序代码(Scriptlet)和JSP标签插入HTML文件中,形成在服务器端运行的JSP文件(通常扩展名为.jsp)。 作为基于Java的网站开发技术,JSP应用程序具有跨平台等特性,因而在网站项目开发中得到广泛应用。下面代码是一个最简单的JSP程序,hello.jsp。 html head titleFirst Page/title /head body H3 %= Hello World! %/H3 /body /html 其执行结果为HTML文档,如下: html head title First Page /title /head body H3Hello World!/H3 /body /html JSP与Java Servlet一样都是在服务器端执行的,执行的结果通常以HTML文件的形式由Web服务器返回给浏览器端。事实上,JSP与Java Servlet不仅功能相似,而且具有内在的、紧密的关系。在JSP页面被执行的过程中,会被JSP编译器(JSP compiler)编译为Servlet源代码,进而被Java编译器(Java compiler)编译为可在Java虚拟机中执行的字节代码并被执行,如图8-1所示。当然,这两个编译的操作仅在对JSP页面的第一次请求时自动发生,之后便不再重复,除非开发人员提交了新的JSP代码。 图8-1 JSP程序执行过程 针对本节前面的JSP程序实例,下面的代码就是由JSP编译器所生成的Servlet源代码。 package org.apache.jsp; import javax.servlet.*; import javax.servlet.http.*; import javax.servlet.jsp.*; public final class hello_jsp extends org.apache.jasper.runtime.HttpJspBase implements org.apache.jasper.runtime.JspSourceDependent { private static final javax.servlet.jsp.JspFactory _jspxFactory = javax.servlet.jsp.JspFactory.getDefaultFactory(); private static java.util.Mapjava.lang.String,java.lang.Long _jspx_dependants; private javax.el.ExpressionFactory _el_expressionfactory; private org.apache.tomcat.InstanceManager _jsp_instancemanager; public java.util.Mapjava.lang.String,java.lang.Long getDependants() { return _jspx_dependants; } public void _jspInit() { _el_expressionfactory = _jspxFac
您可能关注的文档
- (NET程序设计与开发)第7章SqlDataSource数据源控件.ppt
- (PLC应用技术课件)项目三PLC步进顺控指令及其应用.ppt
- (PLC应用技术课件)项目五PLC模拟量控制.ppt
- (Web开发技术)第1章Web技术概述.ppt
- (Web开发技术)第2章Web应用程序开发环境简介.ppt
- (Web开发技术)第4章CSS.ppt
- (Web开发技术)第7章Web服务器端编程与JavaServlet.ppt
- (Web开发技术)第8章Web应用数据库接口.ppt
- (Web开发技术)第9章JSP技术.ppt
- (Web开发技术)第10章Web开发框架.ppt
- 山西天一大联考2025-2026学年高二上学期期末学情监测语文试题(试卷+解析).docx
- 山西忻州部分学校2025-2026学年高一上学期2月质量检测数学试题(人教B版)(试卷+解析).docx
- 山西运城市2025-2026学年高二第一学期期末调研测试数学试题(试卷+解析).docx
- 陕西省榆林市榆阳区2025-2026学年八年级上学期期末地理试题(试卷+解析).docx
- 陕西西安市碑林区2025-2026学年度第一学期期末八年级生物试题(试卷+解析).docx
- 四川省广元市苍溪县2025-2026年八年级上学期期末道德与法治试题(试卷+解析).docx
- 江苏泰州市姜堰区2025-2026学年七年级上学期1月期末数学试题(试卷+解析).docx
- 江苏省扬州市邗江区2025-2026学年九年级上学期期末考试化学试题(试卷+解析).docx
- 江西上饶市铅山县2025-2026学年第一学期期末考试八年级数学试题(试卷+解析).docx
- 江苏扬州市高邮市2025-2026学年度第一学期期末学业质量监测试题九年级英语(试卷+解析).docx
原创力文档

文档评论(0)