JSP简介
Servlet看起来更像java类,生成html比较麻烦,需要调用out.println();JSP看起来更像HTML,是为了简化Servlet的工作而出现的替代品,JSP中可以镶嵌大段HTML代码及java代码。
JSP(Java Server Page)会被Tomcat自动编译,编译后的JSP跟HttpServlet一样,都是javax.servlet.Servlet接口的子类,JSP是另一种形式的servle。
JSP包括很多技术,包括
- Java Bean,
- 自定义标签(Custom Tags),
- EL表达式(Expression Language),
- JSTL标准标签库(Java Standard Tag Library)等。
这些强大成熟的技术使得视图层(View Tier)有很大优势。
如果一个web应用中只含有JSP程序与HTML、图片等静态文件资源,则部署web应用时就不需要web.xml(Tomcat6 、Java EE 5.0之后版本)
JSP工作原理
JSP是一种Servlet,但是与HttpServlet工作方式不太一样。HttpServlet是先由代码编译为class文件后部署到服务器上,先编译后部署。而JSP是先部署源代码后编译为class文件,后部署后编译。
JSP生命周期
JSP也是Servlet,运行时只会有一个实例。跟Servlet一样,JSP实体初始化、销毁时也会调用Servlet的init()与destroy()方法。另外,JSP还有自己的初始化方法与销毁方法_jspInit()与_jspDestory()。
JSP语法
JSP源代码可以分为两部分:
模板数据(HTML代码,不会控制程序流程,不影响程序运行结果)
元素(Java部分,包括脚本(scriptlet)、JSP指令、JSP标签)
JSP脚本必须由“<%”与“%>”括起来,中间部分必须遵循Java语法;
JSP输出可以使用out.println()方法,也可以使用“<%=”与“%>”输出各种类型数据;
JSP注释除了使用Java注释外,还可以使用“<%–”与“–%>”引用;
JSP中声明方法与属性(全局变量)时,使用“<%!”与“%>”;
If语句块前后必须有“{”与“}”;
JSP指令
指令格式<%@directive {attribut=value}* %>
*号表示有0个或多个属性
Directive指常见的指令有page、taglib、include等
Page指令可以设置很多属性
<%@include file=”head.jsp”%>
include指令可以实现页面的区块化(先包含后编译)
<jsp:include page=””/>
include行为(先运行后包含)
<%@ tablib uri=”http://java.sun.com/jsp/jstl/core” prefix=”c”>
JSP行为
JSP行为(JSP Actions)是一组内置的标签,只要书写很少代码就能实现丰富的功能。JSP行为是对常用的JSP功能的抽象与封装,包括两种,自定义JSP行为与标准JSP行为。自定义JSP行为也就是JSP自定义标签。
标准JSP行为格式<jsp:elements {attribute=”value”}*/>
常用行为
<jsp:include page=”” flush=”true”/>
<jsp:useBean id=”beanId” class=”className” scope=”Value”/>
<jsp:setProperty name=”beanName” property=”” value=””/>
<jsp:getProperty name=”beanName” property=””/>
使用Java Bean(POJO->(Plain Ordinary Java Object))
<jsp:plugin />嵌入Applet
<jsp:forword/>
实际上是对
request.getRequestDispatcher(“someServlet”).forword(request.response);
<jsp:directive />行为相当于JSP指令。
<jsp:direcive.pate/>相当于<%@ page %>,等等。
JavaWeb开发平台更倾向于使用directive行为而不是指令。
JSP隐藏对象
JSP中内置9个隐藏对象,有out、request、response、config、session、applaction、page、pageContext、exception
JSP配置
配置JSP同配置Servlet形式上完全一样,只是Servlet使用<servlet-class>标签,而JSP使用<jsp-file>
web.xml中<jsp-config>支持对JSP的批量处理,包含两个子标签<tablib>和<jsp-property-group>
EL(Expression Language)表达式
EL表达是是用${}括起来的脚本,用来方便读取对象。EL表达式写在JSP的HTML代码中,而不能写在“<%”和“%>”引起的JSP脚本中。
UseBean将对象放入request中,EL表达式先从request中获取对象,找不到再去session中查找。
EL表达式能方便操作Java Bean、甚至集合等,并支持简单运算。但EL表达式不能直接访问普通的方法,以及静态属性
总结
与Servlet相比,JSP更适合与HTML打交道,而Servlet更适合与JAVA打交道。它们的特点决定了它们的分工不同,而现在的Java EE(J2EE)系统中,Servlet只用于处理业务逻辑,JSP只用于显示结果。
转载请注明:学时网 » Javaweb 深入JSP技术(三)
相关推荐
在这个"JavaWeb_jsp分页技术实例"中,我们将深入探讨如何在JavaWeb应用中实现分页功能,特别是使用JSP(JavaServer Pages)进行开发。 分页通常涉及到两个主要部分:前端展示和后端处理。前端负责展示当前页的数据...
但根据【标题】和【描述】,我们可以对“JavaWeb技术内幕”的知识点进行深入的介绍。 首先,“JavaWeb技术内幕”通常指深入探讨Java语言用于开发Web应用的核心技术与原理。JavaWeb主要依赖于Java EE(Java Platform...
这个项目是关于使用JavaWeb和JSP技术实现一个FLV(Flash Video)格式的视频播放器。在Web开发中,提供视频流服务是一项常见的需求,而FLV是早期广泛用于网页视频的一种格式,尤其是在Adobe Flash Player普及的时代。...
2. **JSP技术** JSP是Servlet的一种简化方式,它允许开发者直接在HTML页面中嵌入Java代码,实现动态网页。在图书管理系统中,JSP通常用于展示数据,如图书列表、详细信息等。开发者可以使用EL(Expression Language...
本压缩包“javaweb_JSP.rar”似乎包含了与JavaWeb JSP相关的学习资料,下面我们将深入探讨JSP的关键知识点。 1. **JSP基本概念**: - JSP是一种视图技术,它将HTML代码和Java代码分离,使得页面设计人员和后端...
JSP是JavaWeb开发中的视图层技术,用于生成动态网页内容。在购物车系统中,JSP主要负责展示商品列表、购物车内容以及处理用户的交互请求,如添加商品、删除商品等。通过JSP的内置对象如request、response、session...
《深入分析JavaWeb技术内幕修订版》是一本专注于解析JavaWeb开发细节的书籍。JavaWeb是Java编程语言在互联网领域的应用,涵盖了从网页制作到服务器端编程的各种技术。本书的修订版,相比前一版,应该包含了更多的...
JavaWeb、Javabean、JSP和MySQL是构建基于Java技术的Web应用程序的重要组成部分。在本文中,我们将深入探讨这些技术以及它们如何协同工作,为开发者提供一个强大的后端和前端开发框架。 首先,JavaWeb是Java技术在...
JavaWeb编程技术主要涵盖Web应用开发的核心概念和技术,如URL、URI、URN、Servlet和JSP等。以下是对这些知识点的详细解释: ...通过不断学习和实践,可以深入理解JavaWeb编程技术,并提升开发能力。
这个系统采用JAVA、JSP技术构建,是学习和研究web应用开发的良好实践案例。以下将详细讲解该系统涉及的关键知识点: 1. **JavaWeb基础**:JavaWeb是Java技术在Web领域的应用,包括Servlet、JSP、JSTL等技术。在这个...
在IT行业中,JavaWeb、JSP(JavaServer Pages)和Flash是构建动态网页的重要技术,它们各有特色且常被结合使用以实现丰富的交互性。在这个主题中,我们将深入探讨如何利用这些技术创建网页元素插件。 首先,JavaWeb...
通过《JavaWeb习题解析与实验指导》这本书,读者可以深入学习上述知识点,并通过实践来巩固理论知识。书中可能包含各种习题解答,帮助解决在学习过程中遇到的问题,同时提供实验指导,让读者有机会亲手实现这些概念...
在本资源"javaweb中jsp相关知识 代码及笔记"中,我们可以深入学习JSP的基本概念、核心语法、生命周期、与Servlet的关系以及实际开发中的应用。 1. **JSP基本概念** JSP是一种服务器端的技术,它允许开发者将HTML...
本文将深入探讨一个基于JavaWeb+jsp的网络小秘书管理系统,旨在揭示其核心技术和应用价值。 首先,JavaWeb是Java技术在Web开发中的应用,它结合了Servlet、JSP(JavaServer Pages)等技术,为构建动态网站提供了...
二、JSP技术 JSP是一种动态网页技术,它允许开发者在HTML页面中嵌入Java代码,实现动态内容的生成。JSP页面在首次访问时会被编译为Servlet,然后由Servlet处理请求并生成响应。JSP标签库(JSTL)和EL(Expression ...
在IT行业中,构建一个基于JavaWeb的BBS论坛系统是一项常见的实践任务,它涉及到多种技术的整合与应用,主要包括JavaServer Pages (JSP) 和SQL数据库。本系统的实现主要依赖于JavaWeb后端开发、前端展示以及数据库...
首先,JavaWeb是Java在Web应用中的框架,它包括了Servlet、JSP、JSTL、EL等技术。Servlet是Java服务器端程序,处理HTTP请求并返回响应。JSP(JavaServer Pages)则是一种动态网页技术,将HTML和Java代码结合在一起,...
在"基于javaweb+jsp的网络管理系统"中,我们将深入探讨这些技术如何协同工作,以实现高效、可扩展的管理解决方案。 1. **Servlet**:Servlet是Java提供的一种服务器端编程接口,它允许程序员创建处理HTTP请求的Java...
【标题】"javaweb jsp 聊天系统"涉及的是使用JavaWeb技术构建一个实时聊天应用。在JavaWeb开发中,JSP(JavaServer Pages)是用于创建动态网页的一种技术,它允许开发者在HTML代码中嵌入Java代码,以实现服务器端的...