`
灵动的水
  • 浏览: 194498 次
  • 性别: Icon_minigender_1
  • 来自: 济南
社区版块
存档分类
最新评论

Javaweb 深入JSP技术(三)

阅读更多

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包括很多技术,包括

  1. Java Bean,
  2. 自定义标签(Custom Tags),
  3. EL表达式(Expression Language),
  4. 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分页技术实例"中,我们将深入探讨如何在JavaWeb应用中实现分页功能,特别是使用JSP(JavaServer Pages)进行开发。 分页通常涉及到两个主要部分:前端展示和后端处理。前端负责展示当前页的数据...

    深入分析JavaWeb技术内幕 修订版PDF

    但根据【标题】和【描述】,我们可以对“JavaWeb技术内幕”的知识点进行深入的介绍。 首先,“JavaWeb技术内幕”通常指深入探讨Java语言用于开发Web应用的核心技术与原理。JavaWeb主要依赖于Java EE(Java Platform...

    基于javaweb+jsp的flv视频播放程序

    这个项目是关于使用JavaWeb和JSP技术实现一个FLV(Flash Video)格式的视频播放器。在Web开发中,提供视频流服务是一项常见的需求,而FLV是早期广泛用于网页视频的一种格式,尤其是在Adobe Flash Player普及的时代。...

    基于javaweb+jsp+serverlet

    2. **JSP技术** JSP是Servlet的一种简化方式,它允许开发者直接在HTML页面中嵌入Java代码,实现动态网页。在图书管理系统中,JSP通常用于展示数据,如图书列表、详细信息等。开发者可以使用EL(Expression Language...

    javaweb_JSP.rar

    本压缩包“javaweb_JSP.rar”似乎包含了与JavaWeb JSP相关的学习资料,下面我们将深入探讨JSP的关键知识点。 1. **JSP基本概念**: - JSP是一种视图技术,它将HTML代码和Java代码分离,使得页面设计人员和后端...

    javaweb购物车jsp+sqlserver

    JSP是JavaWeb开发中的视图层技术,用于生成动态网页内容。在购物车系统中,JSP主要负责展示商品列表、购物车内容以及处理用户的交互请求,如添加商品、删除商品等。通过JSP的内置对象如request、response、session...

    ISBN 978-7-121-23293-0-深入分析JavaWeb技术内幕修订版.pdf

    《深入分析JavaWeb技术内幕修订版》是一本专注于解析JavaWeb开发细节的书籍。JavaWeb是Java编程语言在互联网领域的应用,涵盖了从网页制作到服务器端编程的各种技术。本书的修订版,相比前一版,应该包含了更多的...

    javaweb javaben jsp mysql

    JavaWeb、Javabean、JSP和MySQL是构建基于Java技术的Web应用程序的重要组成部分。在本文中,我们将深入探讨这些技术以及它们如何协同工作,为开发者提供一个强大的后端和前端开发框架。 首先,JavaWeb是Java技术在...

    JavaWeb编程技术参考答案

    JavaWeb编程技术主要涵盖Web应用开发的核心概念和技术,如URL、URI、URN、Servlet和JSP等。以下是对这些知识点的详细解释: ...通过不断学习和实践,可以深入理解JavaWeb编程技术,并提升开发能力。

    javaweb JAVA JSP的购物商城系统源码(电子商务系统)购物系统,电子产品销售系统

    这个系统采用JAVA、JSP技术构建,是学习和研究web应用开发的良好实践案例。以下将详细讲解该系统涉及的关键知识点: 1. **JavaWeb基础**:JavaWeb是Java技术在Web领域的应用,包括Servlet、JSP、JSTL等技术。在这个...

    基于javaweb+jsp+flash让网页元素插件

    在IT行业中,JavaWeb、JSP(JavaServer Pages)和Flash是构建动态网页的重要技术,它们各有特色且常被结合使用以实现丰富的交互性。在这个主题中,我们将深入探讨如何利用这些技术创建网页元素插件。 首先,JavaWeb...

    JavaWeb习题解析与实验指导_JavaWeb习题解析与实验指导_

    通过《JavaWeb习题解析与实验指导》这本书,读者可以深入学习上述知识点,并通过实践来巩固理论知识。书中可能包含各种习题解答,帮助解决在学习过程中遇到的问题,同时提供实验指导,让读者有机会亲手实现这些概念...

    javaweb中jsp相关知识 代码及笔记

    在本资源"javaweb中jsp相关知识 代码及笔记"中,我们可以深入学习JSP的基本概念、核心语法、生命周期、与Servlet的关系以及实际开发中的应用。 1. **JSP基本概念** JSP是一种服务器端的技术,它允许开发者将HTML...

    基于javaweb+jsp的网络小秘书管理系统

    本文将深入探讨一个基于JavaWeb+jsp的网络小秘书管理系统,旨在揭示其核心技术和应用价值。 首先,JavaWeb是Java技术在Web开发中的应用,它结合了Servlet、JSP(JavaServer Pages)等技术,为构建动态网站提供了...

    基于javaweb+jsp的图书管理系统(hibernate)

    二、JSP技术 JSP是一种动态网页技术,它允许开发者在HTML页面中嵌入Java代码,实现动态内容的生成。JSP页面在首次访问时会被编译为Servlet,然后由Servlet处理请求并生成响应。JSP标签库(JSTL)和EL(Expression ...

    基于javaweb+jsp的BBS论坛系统(jsp+sql)

    在IT行业中,构建一个基于JavaWeb的BBS论坛系统是一项常见的实践任务,它涉及到多种技术的整合与应用,主要包括JavaServer Pages (JSP) 和SQL数据库。本系统的实现主要依赖于JavaWeb后端开发、前端展示以及数据库...

    JavaWeb+JSP+Servlet+JDBC分页查询和查询后分页界面优化最终版

    首先,JavaWeb是Java在Web应用中的框架,它包括了Servlet、JSP、JSTL、EL等技术。Servlet是Java服务器端程序,处理HTTP请求并返回响应。JSP(JavaServer Pages)则是一种动态网页技术,将HTML和Java代码结合在一起,...

    基于javaweb+jsp的网络管理系统

    在"基于javaweb+jsp的网络管理系统"中,我们将深入探讨这些技术如何协同工作,以实现高效、可扩展的管理解决方案。 1. **Servlet**:Servlet是Java提供的一种服务器端编程接口,它允许程序员创建处理HTTP请求的Java...

    javaweb jsp 聊天系统

    【标题】"javaweb jsp 聊天系统"涉及的是使用JavaWeb技术构建一个实时聊天应用。在JavaWeb开发中,JSP(JavaServer Pages)是用于创建动态网页的一种技术,它允许开发者在HTML代码中嵌入Java代码,以实现服务器端的...

Global site tag (gtag.js) - Google Analytics