`
灵动的水
  • 浏览: 190967 次
  • 性别: 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技术(三)

分享到:
评论

相关推荐

    课设&毕设&论文-jsp网上购书系统设计(源代码+论文).zip

    完整的JavaWeb和jsp毕业设计源码:这些源码都是经过我们专业团队精心设计和编写的,涵盖了各种常见的JavaWeb和jsp技术,包括但不限于servlet、jsp、javabean、JDBC等。这些源码可以直接用于您的毕业设计,也可以作为...

    Java Web整合开发王者归来pdf part15.rar

    1.3 Web开发技术发展历史 6 1.3.1 传统的Web服务器模式开发 6 1.3.2 动态展现页面技术 6 1.3.3 CGI实现页面的动态生成 6 1.3.4 Java Servlet:改进的CGI 7 1.3.5 JSP:Servlet的模板 8 1.3.6 JSP基本原理 9 1.4 本章...

    javaweb 期末大作业 在线购书系统 jsp+Servlet+mysql5.6.zip

    技术深度与广度兼具:每个项目都涉及了JavaWeb的核心技术,包括Servlet、JSP、JDBC、MyBatis等,确保您在学习中得到全方位的锻炼。 实战性强:项目设计注重实战体验,每个项目都有真实的应用场景,让您在实践中深入...

    java web技术开发大全(最全最新)

    第5章 JSP技术 5.1 用MyEclipse编写第一个JSP程序 5.1.1 实例:编写显示服务器当前时间的JSP程序 5.1.2 调试JSP程序 5.1.3 改变JSP的访问路径和扩展名 5.1.4 手动发布JSP程序 5.2 JSP的运行原理 5.2.1 ...

    课设&毕设&论文-JSP+SQL基于JSP的学生信息管理系统(源代码+论文+答辩PPT).zip

    学校的课设、毕设、大作业,相比各位也是相当的头疼,这份资料...丰富的学习资源,除了源码和论文,我们还提供了大量的学习资源,包括相关的教程、示例代码、参考文献等,可以帮助您更好地理解和掌握JavaWeb和jsp技术。

    教学在线留言答疑系统,JavaWeb基础,servlet jsp filter,原生jdbc.zip

    技术栈概览:涵盖了Spring、SpringMVC、MyBatis等主流JavaWeb框架的使用,以及MySQL数据库的管理。 项目模块解析:按照实际项目结构,分模块介绍了后台管理、用户权限管理、数据报表生成等功能的具体实现。 代码与...

    课设&毕设&论文-jsp+mysql在线考试系统论文.zip

    学校的课设、毕设、大作业,相比各位也是相当的头疼,这份资料...丰富的学习资源,除了源码和论文,我们还提供了大量的学习资源,包括相关的教程、示例代码、参考文献等,可以帮助您更好地理解和掌握JavaWeb和jsp技术。

    课设&毕设&论文-jsp+sql书店(论文).zip

    学校的课设、毕设、大作业,相比各位也是相当的头疼,这份资料...丰富的学习资源,除了源码和论文,我们还提供了大量的学习资源,包括相关的教程、示例代码、参考文献等,可以帮助您更好地理解和掌握JavaWeb和jsp技术。

    课设&毕设&论文-jsp书店系统设计(论文).zip

    学校的课设、毕设、大作业,相比各位也是相当的头疼,这份资料...丰富的学习资源,除了源码和论文,我们还提供了大量的学习资源,包括相关的教程、示例代码、参考文献等,可以帮助您更好地理解和掌握JavaWeb和jsp技术。

    课设&毕设&论文-jsp个人理财系统(论文).zip

    学校的课设、毕设、大作业,相比各位也是相当的头疼,这份资料...丰富的学习资源,除了源码和论文,我们还提供了大量的学习资源,包括相关的教程、示例代码、参考文献等,可以帮助您更好地理解和掌握JavaWeb和jsp技术。

    课设&毕设&论文-JSP设计班级学生管理系统论文.zip

    学校的课设、毕设、大作业,相比各位也是相当的头疼,这份资料...丰富的学习资源,除了源码和论文,我们还提供了大量的学习资源,包括相关的教程、示例代码、参考文献等,可以帮助您更好地理解和掌握JavaWeb和jsp技术。

    课设&毕设&论文-jsp网络在线考试系统(系统).zip

    学校的课设、毕设、大作业,相比各位也是相当的头疼,这份资料...丰富的学习资源,除了源码和论文,我们还提供了大量的学习资源,包括相关的教程、示例代码、参考文献等,可以帮助您更好地理解和掌握JavaWeb和jsp技术。

    课设&毕设&论文-基于JSP的畅想空间电子商务系统.zip

    学校的课设、毕设、大作业,相比各位也是相当的头疼,这份资料...丰富的学习资源,除了源码和论文,我们还提供了大量的学习资源,包括相关的教程、示例代码、参考文献等,可以帮助您更好地理解和掌握JavaWeb和jsp技术。

    课设&毕设&论文-JSP在线CD销售系统(论文).zip

    学校的课设、毕设、大作业,相比各位也是相当的头疼,这份资料...丰富的学习资源,除了源码和论文,我们还提供了大量的学习资源,包括相关的教程、示例代码、参考文献等,可以帮助您更好地理解和掌握JavaWeb和jsp技术。

    课设&毕设&论文-基于jsp的新闻发布系统(论文).zip

    学校的课设、毕设、大作业,相比各位也是相当的头疼,这份资料...丰富的学习资源,除了源码和论文,我们还提供了大量的学习资源,包括相关的教程、示例代码、参考文献等,可以帮助您更好地理解和掌握JavaWeb和jsp技术。

    课设&毕设&论文-jsp+sql城乡信息管理(系统).zip

    学校的课设、毕设、大作业,相比各位也是相当的头疼,这份资料...丰富的学习资源,除了源码和论文,我们还提供了大量的学习资源,包括相关的教程、示例代码、参考文献等,可以帮助您更好地理解和掌握JavaWeb和jsp技术。

    课设&毕设&论文-基于JSP电子商务系统?(论文).zip

    学校的课设、毕设、大作业,相比各位也是相当的头疼,这份资料...丰富的学习资源,除了源码和论文,我们还提供了大量的学习资源,包括相关的教程、示例代码、参考文献等,可以帮助您更好地理解和掌握JavaWeb和jsp技术。

    课设&毕设&论文-jsp+sql毕业选题系统(论文).zip

    学校的课设、毕设、大作业,相比各位也是相当的头疼,这份资料...丰富的学习资源,除了源码和论文,我们还提供了大量的学习资源,包括相关的教程、示例代码、参考文献等,可以帮助您更好地理解和掌握JavaWeb和jsp技术。

    课设&毕设&论文-JSP作业管理系统(源代码+论文).zip

    学校的课设、毕设、大作业,相比各位也是相当的头疼,这份资料...丰富的学习资源,除了源码和论文,我们还提供了大量的学习资源,包括相关的教程、示例代码、参考文献等,可以帮助您更好地理解和掌握JavaWeb和jsp技术。

    课设&毕设&论文-JSP考试管理系统(源代码+论文).zip

    学校的课设、毕设、大作业,相比各位也是相当的头疼,这份资料...丰富的学习资源,除了源码和论文,我们还提供了大量的学习资源,包括相关的教程、示例代码、参考文献等,可以帮助您更好地理解和掌握JavaWeb和jsp技术。

Global site tag (gtag.js) - Google Analytics