`
jamesfork
  • 浏览: 32779 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
最近访客 更多访客>>
社区版块
存档分类
最新评论

jsp语法摘要

    博客分类:
  • java
阅读更多
表达式:
作用:用来包含一个符合JSP语法的表达式
语法格式:<%= expression %>

脚步段:
作用:用来包含一个有效的Java程序段
语法格式:<% code fragment %>

包含指令:
作用:在JSP中包含一个静态的文本,同时解析这个文件中的JSP语句
语法格式:<%@ include file="relativeURL" %>

page指令:
作用:用于定义JSP文件中的全局属性
语法格式:
<%@ page
    [ language="java"] --语言,只支持"java"
    [ extends="package.class"]
    [ import="{package.class | package.*},..."]
    [ session="true | false"]
    [ buffer="none|8kb|sizekb"]
    [ autoFlush="true | false"]
    [ isThreadSafe="true | false"]
    [ info="text"]
    [ errorPage="relativeURL"]
    [contentType="mimeType[;charset=characterSet ]" |"text/html;charset=ISO-8859-1"]
    [ isErrorPage="true | false"]
%>

extends="package.class"
    标明JSP编译是需要加入的Java Class的全名,但是得慎重使用,会限制JSP的编译能力
   
import="{package.class | package.*},..."
    需要导入的Java包的列表,这些包作用于程序段,表达式,以及声明   
   
session="true | false"
    设定客户是否需要HTTP Session,如果为True,那么Session是有用的。
    如果为false,那么就不能使用session对象,以及定义了scope=session的
    <jsp:useBean>元素。缺省是true。   
   
buffer="none|8kb|sizekb"
    buffer的大小被out对象用于处理执行后的JSP对客户浏览器的输出,缺省是8kb。
   
autoFlush="true | false"       
    设置如果buffer溢出,是否需要强制输出,如果其值被定义为true(缺省值),输出正常,如果
    它被设置为false,如果这个buffer溢出,就会导致一个意外错误的发生。如果把buffer设置
    为none,那么就不能把autoFlush设置为false。
   
isThreadSafe="true | false"
    设置Jsp文件是否能处理多线程使用。缺省值是true。也就是说,JSP能够同时处理多个用户的请求,
    如果设置为false,一个JSP只能一次处理一个请求。
   
info="text"
    一个文本在执行JSP将会被逐字加入JSP中,能够使用Servlet.getServletInfo方法取回。

errorPage="relativeURL"
    设置处理异常事件的JSP文件
   
isErrorPage="true | false"
    设置此页是否为出错页,如果被设置为true,就能使用exception对象
   
注意1:<%@ page %>指令作用于整个JSP页面,同样包括静态的包含文件。但是<%@ page %>指令不能作用
于动态的包含文件,比如<jsp:inclue>
注意2:其中的属性只能用一次,Import属性例外

taglib 指令
作用:定义一个标签库以及其自定义标签的前缀
语法格式:
    <%@ taglib uri="URIToTagLibrary" prefix="tagPrefix">

<jsp:forward>
作用:重定向到一个JSP文件、HTML文件,或者是一个程序段。
语法格式:
    <jsp:forward page={"relativeURL" | "<%= expression %>"} />   
   
    <jsp:forward page={"relativeURL" | "<%= expression %>"}
        <jsp:param name="parameterName"
            value="{parameterValue | <%= expression %>}" />
        [<jsp:param ... />]
    </jsp:forward>
   
<jsp:useBean>
作用:创建一个Bean实例并指定它的名字和作用范围。
语法格式:<jsp:useBean
                id="beanInstanceName"   
                scope="page|request|session|application"
                {
                    class="package.class" |
                    type="package.class" |
                    class="package.class" type="package.class" |
                    beanName="{package.class | <%=expression %>}"
                }
                {
                    /> |
                    > other elements </jsp:useBean>
                }
    示例:
        <jsp:useBean id="cart" scope="session" class="session.Carts" />
        <jsp:useBean id="checking" scope="session" class="bank.Checking" >
            <jsp:setProperty name="checking" property="balance" value="0.0" />
        </jsp:useBean>
    属性说明:
        id="beanInstanceName"
        在所定义的范围中确认Bean的变量,使之能在后面的程序中使用此变量来分辨不同的Bean,
    这个变量名对大小写敏感,必须符合所使用的脚本语言的规定。如果Bean已经在别的<jsp:useBean>
    标记中创建,则当使用这个已经创建过的Bean时,id的值必须与原来的那个id一致,否则则意味着
    创建了同一个类的两个不同的对象。
        scope="page|request|session|application"
        bean存在的范围以及id变量名的有效范围。缺省是page。
        page- 能在包含<jsp:useBean>元素的JSP文件以及此文件中的所有静态包含文件中使用这个Bean,
    直到页面执行完毕后向客户端发回响应或转到另一个文件为止。
        reuqest - 比如:request.setAttribute(beanInstanceName).一般来说,这种类型的Bean在单个JSP
    文件中完成生命周期,但在使用<jsp:forward>的情况下,Bean的生命周期会延长。
        session - 从创建Bean开始,就能在任何使用相同session的JSP文件中使用这个Bean。这个Bean存在
    于整个Session生存周期内,任何在分享此Session的Jsp文件都能使用同一个Bean。注意在创建这个Bean的
    JSP文件中"<%page %>"指令中必须指定"session="true""。
        application - 在整个web应用的服务启动到中止,Bean可以理解为全局变量。
       
    class="package.class"   
        使用new关键字以及class构造器从一个class实例一个bean。class不能是抽象的,必须有一个公用的,
    没有参数的构造器。
   
    type="package.class" ??
        如果这个bean已经在指定的范围中存在,那么赋予这个Bean一个数据类型。如果使用type属性的同时没有使用
    class或beanName,Bean将不会被实例化。
   
    beanName="{package.class | <%= expression %>}" type="package.class"
        使用java.bean.Beans.instantitate方法来从一个class或串行话的模版中实例化一个Bean,同时指定Bean的类型
    。Bean.instantiate方法将检查此名称是否表示一个类或一个串行化模版。如果这个Bean是被串行化的,那么
    Beans.instantiate方法将通过使用一个类装载器读取串行化格式(类似package.class.ser)。
        beanName可以是package和class,也可以是表达式,它的值会传给Beans.instantiate方法。type的值可以和Bean
    相同,也可以是它的基类,或者是它所实现的接口。
   
<jsp:setProperty>
作用:设置Bean的属性值。
语法格式:
    <jsp:setProperty
        name="beanInstanceName"
        {
            property="*" |
            property="propertyName" [param="parameterName"] |
            property="propertyName value="{string | <%= expression %>}"
        }
    />   
   
示例:<jsp:setProperty name ="mybean" property="*" />
      <jsp:setProperty name ="mybean" property="username" />
      <jsp:setProperty name ="mybean" property="username" value="zhou" />
属性说明:
    name="beanInstanceName"
        表示已经在<jsp:useBean>中创建的Bean实例的名字。
    property="*"
        存储用户输入的所有值,自动匹配bean中的属性。
    property="propertyName" [param="parameterName"]
        用一个参数值来指定Bean中一个属性值,一般情况下是从request对象中获取的。
    其中property指定Bean的属性名,param指定request中的参数名。
    property="propertyName value="{string | <%= expression %>}"
    手工赋值,指定属性名于值。
         
<jsp:getProperty>
作用:获取Bean的属性值,用于在页面中显示。
语法格式:
    <jsp:getProperty name="beanInstanceName" property="propertyName" />
    属性说明:
        name="beanInstanceName"
        bean的名字,由<jsp:useBean>指定,对象必须已经存在。
        property="propertyName"
        所指定的Bean的属性名。
       
<jsp:include>
作用:包含一个静态或动态文件
语法格式:
<jsp:include page="{relativeURL | <%= expression%>" flush="true" />

<jsp:include page="{relativeURL | <%= expression %>}" flush="true" >
    <jsp:param name="parameterName" value="{parameterValue | <%= expression %>}" />
</jsp:include>   

示例:
<jsp:include page="copyright.html" flush="true" />
<jsp:include page="script/login.jsp" flush="true">
    <jsp:param name="username" value="james" />
</jsp:include>   

属性说明:
page="{relativeURL | <%= expression%>"
参数为一相对路径,或者是代表相对路径的表达式。
flush="true"
必须设置为true.
<jsp:param name="parameterName" value="{parameterValue | <%= expression %>}" />
<jsp:param>用来传递一个或多个参数到指定的动态文件,能在一个页面中使用多个<jsp:param>
用来传递多个参数
<jsp:include> 与 <%@include %>的区别在于<%@include %>只能包含静态文件,<%@include %>类似于C语言
中的宏替换。而判断页面是动态还是静态,不能根据文件类型,而是要看文件是否包含了要处理的JAVA程序。另外
<%@include %>不能传递参数。

<jsp:plugin>
作用:插入一个applet或Bean,必要的话还要下载一个Java插件用于执行
语法格式: <jsp:plugin
            type="bean | applet"
            code="classFileName"
            codebase="classFileDirectoryName"
            [name="instanceName"]
            [archive="URLToArchive,..."]
            [align="bottom|top|middle|left|right"]
            [height="displayPixels"]
            [width="displayPixels"]
            [hspace="leftRightPixels"]
            [vspace="topBottomPixels"]
            [jreversion="JREVersionNumber | 1.1"]
            [nspluginurl="URLToPlugin"]
            [iepluginurl="URLtoPlugin"]
            [<jsp:params>
              [ <jsp:param name="parameterName"
                  value="{parameterValue | <%=expression %>} %>} />]+
             </jsp:params>]
            [<jsp:fallback> text message for user </jsp:fallback>]
        </jsp:plugin>
属性说明:
    type="bean | applet"
    将被执行的插件对象的类型,必须选择,无缺省值。
    code="classFileName"
    将会被Java插件执行的Java Class的名字,必须以.class结尾。这个文件必须存在于codebase属性指定的目录中。
    codebase="classFileDirectoryName"
    将会被执行的Java class文件的目录(或者路径)    ,如果没有提供此属性,那么使用<jsp:plugin>的jsp文件的目录将会被使用。
   
    [name="instanceName"]
    这个Bean或applet实例的名字,它将会在Jsp其它的地方调用。
    [archive="URLToArchive,..."]
    一些由逗号分开的路径名,这些路径名用于预装一些将要使用的class,这会提高applet的性能。
    [align="bottom|top|middle|left|right"]
    图形对象、applet的位置
    [height="displayPixels"]
    [width="displayPixels"]
    Applet或Bean将要显示的长宽的值,此值为数字,单位为像素   
    [hspace="leftRightPixels"]
    [vspace="topBottomPixels"]
    Applet或Bean显示时在屏幕左右,上下所需留下的空间,单位为像素
    [jreversion="JREVersionNumber | 1.1"]
    Applet或Bean运行所需的Java Runtime Environment(JRE)的版本,缺省是1.1。
    [nspluginurl="URLToPlugin"]
    netscape Navigator用户能够使用的JRE的下载地址,此值为一个标准的URL。
    [iepluginurl="URLtoPlugin"]
    IE用户能够使用的JRE的下载地址,此值为一个标准的URL。
    [<jsp:params>
              [ <jsp:param name="parameterName"
                  value="{parameterValue | <%=expression %>} %>} />]+
             </jsp:params>]
    需要向Applet或Bean传递的参数或参数值。
    [<jsp:fallback> text message for user </jsp:fallback>]
    一段文字,用于Java插件不能启动时显示给用户的,如果插件能够启动而applet或Bean不能,那么浏览器
    会有一个出错信息弹出。

JSP内置对象

对象名             类型                                     作用域
request         javax.servlet.ServletRequest的子类         request
response        javax.servlet.ServletResponse的子类        page
pageContext     javax.servlet.jsp.PageContext              page
session         javax.servlet.http.HttpSession             session
application     javax.servlet.ServletContext               application
out             javax.servlet.jsp.JspWriter                page
config          javax.servlet.ServletConfig                page
page            java.lang.Object                           page
exception        java.lang.Throwable                        page

request 请求对象
    代表的是来自客户端的请求,从页面的form中获取参数(getParameter(属性名))

response 响应对象
    代表的是对客户端的响应,组织发送到客户端的数据,是一个比较底层的对象,采用流的方式。一般基于字符的处理都采用out对象
   
pageContext 页面上下文对象
    代表的是当前页面运行的一些属性,很少使用

session 会话对象
    代表服务器与客户端所建立的会话,基于cookie,客户端必须使用cookie

application 应用程序对象   
    负责提供应用程序在服务器中运行的一些全局信息
   
out 输出对象
    代表了向客户段发送数据的对象,提供基于文本的处理功能

config 配置对象
    提供一些配置信息,提供servlet初始化信息
   
page 页面对象
    代表了正在运行的由JSP文件产生的类对象
   
exception 异常对象
    页面运行时产生的异常,由服务器JSP引擎产生

JSP运行后会在work目录下生成一个运行期.java文件   
分享到:
评论

相关推荐

    JSP环境美容服务公司网站(论文+系统+摘要).rar

    这涉及到JSP的基本语法、指令、脚本元素以及内置对象的应用,如Request、Response、Session等。 论文部分可能详细介绍了项目的背景、目标、系统架构、设计与实现过程,以及可能遇到的问题和解决方案。这部分内容会...

    google核心搜索jsp实现方式

    在构建Web应用程序时,Google核心搜索可以通过Java...这个过程中,你需要熟悉JSP语法、HTTP请求、JSON解析以及Google Custom Search API的使用。记住,为了遵守Google的使用条款,确保正确地处理API调用量和速率限制。

    JSP环境美容服务公司网站(论文+系统+摘要).zip

    1. **JSP基础**:了解JSP的基本语法,包括声明、脚本元素、表达式、指令和动作等。 2. **Servlet与JSP协作**:JSP通常与Servlet一起使用,Servlet处理业务逻辑,JSP负责展示视图。 3. **MVC模式**:可能应用了...

    jsp-MD5.rar_JSP MD5_md5.jsp

    3. **JSP语法**:`md5.jsp`页面可能使用了JSP的脚本元素和指令元素,如`! %&gt;`(声明部分)、`&lt;%= %&gt;`(表达式部分)和`&lt;jsp:useBean&gt;`(使用JavaBean)。它可能通过一个JavaBean来封装MD5加密逻辑,然后在JSP页面上...

    Java语言案例开发实验指导书.doc

    本资源摘要信息涵盖了 Java 语言案例开发实验指导书的主要知识点,包括 JSP 实验环境的搭建、JSP 语法、JSP 内置对象、JavaBean 组件技术、Servlet 技术和 JDBC 技术等。 一、JSP 实验环境的搭建 在实验一中,我们...

    基于jsp的网上书店源码

    3. **图书详情(BookDetail.jsp)**:显示单本图书的详细信息,如内容摘要、评价、购买选项等。 4. **购物车(Cart.jsp)**:用户可以添加书籍到购物车,查看已选书籍,修改数量或删除商品。 5. **用户管理**:...

    j2ee12:jsp01:jsp页面嵌套java代码、<%@ %>的使用

    描述中提到的"NULL"意味着没有提供具体的博客内容摘要,但我们可以通过标题来推测,这篇博文可能详细介绍了如何在JSP页面中嵌入Java代码,以及如何利用`&lt;%@ %&gt;`标签来导入必要的Java类或者声明页面指令。 **标签...

    [计算机项目]基于jsp的环境美容服务公司网站系统设计与实现(项目报告+源代码+摘要).zip

    1. **JSP基础**:了解JSP的基本语法,包括声明、脚本元素、指令以及EL(Expression Language)和JSTL(JavaServer Pages Standard Tag Library)的使用。 2. **MVC设计模式**:许多JSP项目采用MVC模式,将模型...

    JSP环境美容服务公司网站(设计说明书+系统+摘要).zip

    开发者需要有扎实的Java编程基础,以及对JSP语法和相关API的熟悉。 这个毕业设计项目是一个综合性的实践,有助于学生全面掌握Web开发技能,理解前后端交互过程,提升问题解决能力,并为将来的工作或进一步学习打下...

    JSP内部测试笔试题和答案.doc

    JSP内部测试笔试题和答案资源摘要信息涵盖了计算机领域中的多个知识点,包括JSP、Servlet、Ajax、Java EE等技术。以下是该资源摘要信息中涵盖的知识点: 1. JSP表达式语言(EL):JSP表达式语言(EL)用于在网页上...

    动态Web数据库技术——基于JSP和XML技术实现

    XML文档包含元素、属性、注释等结构,且具有严格的语法规则。在Web应用中,XML常用于数据交换,例如在不同系统之间传递数据,或者作为Ajax请求的数据格式。XML还支持XPath、XSLT和XQuery等工具,用于数据查询和转换...

    jsp+access网络书店销售管理系统(系统+论文+开题报告+任务书+摘要+英文文献).zip

    该压缩包文件包含了一个完整的网络书店销售管理系统的源代码、相关论文、开题报告、任务书、摘要以及英文文献,旨在为学习和研究Web开发,特别是使用JavaServer Pages (JSP) 和 Microsoft Access 的集成开发提供实践...

    jsp BBS入门教程

    ### JSP语法结构 1. **声明(Declarations)**:用于声明变量或方法,如`! int count = 0; %&gt;` 2. **脚本元素(Scriptlets)**:包含Java代码,用于处理逻辑,如`(int i=0; i; i++) { %&gt;&lt;%=i%&gt;&lt;br/&gt;&lt;% } %&gt;` 3. *...

    jsp火车票订购系统课程设计报告.doc

    学生需要熟练运用JSP语法、EL(Expression Language)和JSTL(JavaServer Pages Standard Tag Library)标签库,以及必要的JavaBeans组件,以构建完整的购票系统。 **设计说明书**应包含中文摘要、关键词、目录、...

    java毕设课设-JSP+sql网络远程作业处理系统(系统+论文+开题报告+中英文摘要+封面+目录+资料).zip

    4. 作业批阅:系统可能包含自动批阅机制(如语法检查),或者人工批改接口,供教师使用。 5. 作业反馈:系统会展示作业得分、批注等信息,学生可查看和下载。 6. 作业统计:对学生的提交情况进行统计,便于教师了解...

    基于jsp的环境美容服务公司网站系统毕业设计与实现(项目报告+源代码+摘要).zip

    2. **Java编程**:JSP本身是基于Java的,因此开发者需要熟悉Java语法,包括类、对象、接口、异常处理等。此外,可能还涉及到Java Servlet,它是Java Web应用中的核心组件,负责接收HTTP请求并生成HTTP响应。 3. **...

    jsp宽带上网费用管理系统毕业论文

    1. JSP基础:讲解JSP的基本语法,包括声明、脚本元素、表达式、指令等,以及如何在JSP页面中嵌入Java代码。 2. 数据库设计:描述如何为宽带费用管理设计合理的数据库结构,包括用户信息表、套餐信息表、费用记录表...

    JSP程序设计教程(第2章) JSP开发基础.ppt

    本资源摘要信息涵盖了 JSP 程序设计教程的第二章节内容,主要介绍了 Java 语言基础和 JavaScript 脚本语言的知识点。 Java 语言基础 Java 语言是一种新一代编程语言,由 Sun 公司于 1995 年推出。 Java 语言具有...

    JSP+sql网络远程作业处理系统(系统+论文+开题报告+中英文摘要+封面+目录+资料).zip

    SQL的强大之处在于其简洁的语法和高效的数据处理能力。 三、系统架构设计 1. 用户界面:用户通过浏览器访问系统,提交作业或查看作业状态。JSP页面负责用户交互,提供友好的界面。 2. 控制层:使用Servlet或JSP的...

Global site tag (gtag.js) - Google Analytics