热点:

    JSP语法与规则详解

      [   原创  ]   作者:
    收藏文章 暂无评论

    接下来了解JSP的基本语法与规则

    1、 JSP模板组成部分

    2、 JSP模板元素是指页面中的静态HTML内容,可在其中嵌入JSP的其他元素,以实现动态内容生成和业务逻辑处理,使静态页面具备动态交互功能。

    3、 JSP模板元素构建网页基本框架,确定页面布局与视觉呈现。

    4、 JSP表达式

    5、 JSP表达式用于将Java变量或表达式的计算结果直接输出到客户端,简化了输出操作。只需将待输出的内容置于<%=和%>之间即可完成动态数据的显示,无需额外的输出语句。

    6、 当前时间:<%= new java.util.Date() %>

    7、 JSP表达式中的变量或表达式经计算后转为字符串,随后插入到页面输出的对应位置。

    8、 JSP表达式中的变量或表达式后不可添加分号,该表达式在转换为Servlet时会自动生成一条out.print(...)语句,用于输出内容到页面。

    9、 4.3节脚本代码示例

    10、 JSP脚本片段是嵌入在<%和%>标签内的一段或多段Java代码,用于在网页中执行动态逻辑处理。

    11、 在JSP脚本片段中,可进行变量定义、基本运算、调用Java类、访问数据库及文件系统等操作,具备普通Java程序的多数功能。

    12、 在JSP脚本片段中,可直接利用其内置的隐含对象实现Web应用的特定功能。

    13、 JSP脚本片段中的Java代码会直接复制到由JSP页面转换生成的Servlet的_jspService()方法内。因此,脚本片段中只能包含符合Java语法规则的代码,其他内容如文本、HTML标签或其他JSP元素均不得出现在脚本片段内部,必须置于其外部才能正确解析和执行。

    14、 JSP脚本片段中的Java代码需严格遵守Java语法规则,如每条语句结尾必须使用分号(;)进行结束。

    15、 一个JSP页面可包含多个脚本片段,每个片段由独立的<%和%>符号包围。不同脚本片段之间可插入文本内容、HTML标签及其他JSP元素,实现动态与静态内容的混合布局与灵活组织。

    16、 举例:

    17、 多个脚本片段中的代码可相互访问,如同全部置于一对<%%>标签内。

    18、 上述JSP代码与下方代码在执行时呈现相同的效果。

    19、 在单个脚本片段中,Java语句可以不完整,但多个片段组合后必须构成完整的Java语句。特别是在处理条件判断和循环结构时,各脚本片段与其他元素结合后,应能形成语法正确的完整控制语句,确保程序逻辑正确执行。

    20、 在JSP页面转换为Servlet的过程中,位于脚本片段中的Java代码会完整地复制到生成的Servlet类的_jspService()方法内。与此同时,页面中除脚本片段以外的内容,包括文本、HTML标签以及其他JSP组件,也都会被逐一对应地翻译成Java代码,并插入到_jspService()方法中的相应位置。整个转换过程严格保持原始内容在JSP文件中的顺序和结构,确保执行逻辑与页面设计一致,从而实现动态网页的正确输出与处理。

    21、 在JSP页面中编写脚本片段时,可运用条件、循环和选择等流程控制语句来构建周边元素的执行逻辑。需特别注意各元素间的先后顺序与相互关系,尤其当循环或条件判断分散在多个脚本片段中时,应充分考虑其对邻近JSP元素行为和输出结果的影响,确保整体逻辑正确连贯。

    22、 示例一:

    23、 JSP声明语句

    24、 由于Java语法限制,方法内无法使用其他方法、成员变量、静态代码块等结构,因此这些成分在JSP脚本中同样不可用。

    25、 若想让JSP脚本代码不位于_jspService()方法内,可采用JSP声明方式实现。

    26、 JSP声明以<%! 开始,后跟代码内容,用于定义类的成员变量或方法。

    27、 JSP的隐含对象作用域仅限于_jspService()方法内,因此在JSP声明部分无法使用这些对象。

    28、 通常避免使用JSP声明编写代码。

    29、 JSP注释采用<%-- 注释内容 --%>格式,用于在页面中添加不可见的说明信息。

    30、 JSP注释在页面被翻译成Servlet时由JSP引擎处理,此时注释内容会被直接忽略,不参与编译和执行过程。

    31、 对比HTML注释与Java注释的异同点

    32、 JSP注释在生成Java源码时会被自动忽略。

    33、 运行class文件时,Java注释会被自动忽略。

    34、 HTML注释在浏览器解析时会被自动忽略。

    35、 JSP指令重写

    36、 指令简述

    37、 JSP指令是专为JSP引擎设计的,不直接生成可见内容,仅用于指示引擎如何处理页面中的其他代码部分。

    38、 JSP指令的语法格式为:<%@ 指令名 属性=值 %>

    39、 指令格式为:指令名 属性=值

    40、 例如:<%@ page contentType=text/html;charset=gb2312%>

    41、 注意属性名区分大小写,请谨慎操作。

    42、 在JSP2.0中,定义了page、include和taglib三种指令,每种指令包含若干属性。若需在JSP页面中设置某条指令的多个属性,既可采用多条指令分别设定各属性,也可通过一条指令语句同时配置多个属性,灵活方便,提升了代码编写的效率与可维护性。

    43、 方式一:

    44、 方式二:

    45、 页面指令与包含指令的使用方法

    46、 页面指令

    47、 page指令用于设定JSP页面的各项属性,无论其在页面中的位置如何,均对整个页面生效。为提升代码可读性并符合编程规范,建议将该指令置于页面最开始的位置,以便于维护和理解,增强程序的结构清晰度与一致性。

    48、 用于设定JSP页面转为Servlet时需导入的包。

    49、 pageEncoding属性用于指定JSP页面转换为Servlet源代码时所采用的字符编码方式。

    50、 通过设置contentType属性,可指定响应头中的Content-Type,用于声明发送给客户端文档的MIME类型,并告知浏览器应采用何种字符集对响应内容进行解码。

    51、 用于设定当前JSP页面发生异常时跳转的目标页面。

    52、 isErrorPage属性用于判断当前页面是否为错误信息显示页面。若设置为true,系统将自动创建exception对象以处理异常;若为false,则不会生成该对象。

    53、 session属性用于决定页面是否加入HTTP会话,即是否自动创建session隐含对象以便在页面中使用会话功能。

    54、 该属性用于设置页面是否禁用EL表达式,若设为忽略,则页面中的EL表达式将不被解析,直接以原始形式显示在浏览器中。

    55、 包含指令用于引入其他文件内容

    56、 include指令的作用是告知JSP引擎,在将当前JSP页面翻译为Servlet源文件时,将其他文件的内容嵌入其中。这种在源码层面实现的合并方式称为静态引入。通过该方式,当前页面与被引入的文件在编译前就已整合,最终共同生成一个统一的Servlet,两者在结构上紧密结合,形成一个整体。

    57、 语法结构

    58、 file属性用来设定所引入文件的相对路径。

    59、 细节:

    60、 被引入的文件需符合JSP语法规范,可包含静态HTML、JSP脚本元素、指令以及行为元素等内容,涵盖普通JSP页面所支持的所有组成部分。

    61、 被引入的文件可使用任意扩展名,即便为html,JSP引擎仍会按JSP页面方式处理其内容。为便于识别,JSP规范建议静态引入文件采用.jspf(JSP片段)作为扩展名,以明确其用途和类型,提升代码可读性与维护性,符合开发规范和工程实践要求。

    62、 在将JSP文件转换为Servlet源码的过程中,JSP引擎会把被包含文件与当前页面中的指令元素进行合并处理(但设置pageEncoding属性的page指令除外)。因此,除import和pageEncoding属性外,page指令的其他属性在这两个页面中的取值必须保持一致,否则会导致冲突或编译错误,影响程序正常运行。

    63、 JSP标签

    64、 1概述

    65、 JSP提供了称为Action的元素,通过在页面中使用该元素,既能实现常见的页面功能,也能完成复杂的业务逻辑处理,增强了页面的动态交互能力。

    66、 Action元素遵循XML标签语法规则,在JSP页面中以标准的XML标签形式呈现,每个元素均按开标签和闭标签的结构书写。

    67、 JSP规范定义了一系列标准的Action元素,其标签均以小写的jsp为前缀,如、等,用于在页面中执行特定动态操作,提升开发效率与代码规范性。

    68、 用于包含其他页面的JSP标签

    69、 标签可将其他资源的输出内容嵌入当前JSP页面中,实现运行时的内容整合,这种方式在JSP执行过程中完成,被称为动态引入,具有灵活、实时的特点。

    70、 语法结构

    71、 page属性用于设定被引入资源的相对路径,支持通过表达式动态获取该路径值。

    72、 flush属性用于控制是否将当前JSP页面已生成的内容立即刷新输出到客户端,再插入其他资源的内容。

    73、 比较标签与include指令的异同点

    74、 @include指令在编译阶段将被包含的JSP代码直接插入到主JSP文件中,形成一个整合后的Servlet源码。由于是代码级别的合并,若两者存在同名变量或重复定义的内容,会导致命名冲突,因此所有可能引发冲突的元素均不可共存。

    75、 使用标签时,系统会将其转换为JspRuntimeLibrary类中的include()方法调用。被包含的JSP页面会独立完成翻译和编译过程。每当主JSP页面被请求时,服务器会首先执行被包含的JSP页面,将其运行生成的HTML内容插入到主页面的指定位置,最终将合并后的完整页面发送至客户端浏览器。由于两者在执行时保持独立,各自的代码逻辑互不干扰,因此即使主页面与被包含页面中存在相同名称的变量或方法,也不会产生冲突,确保了程序的稳定性和模块化特性。

    76、 ○对比

    77、 用于请求转发的JSP标签

    78、 用于将请求转发至另一个资源的标签是。

    79、 语法结构分析

    80、 page属性指定请求转发的目标资源路径,支持静态设置或动态表达式计算获取。

    81、 用于向页面传递参数的JSP标签

    82、 当使用或引入或转发请求至可动态执行的资源(如Servlet或JSP页面)时,可通过标签向目标程序传递请求参数,实现数据的动态传递与处理,增强页面间通信的灵活性和功能性。

    83、 语法结构一

    84、 语法结构二

    85、 ``标签通过name属性定义参数名称,value属性设定参数内容。在使用``或``标签时,可嵌入多个``来传递多组参数信息,实现动态数据的传递与处理,提升页面跳转或包含功能的灵活性和实用性。

    soft.zol.com.cn true https://soft.zol.com.cn/1214/12142032.html report 7693 接下来了解JSP的基本语法与规则 1、 JSP模板组成部分 2、 JSP模板元素是指页面中的静态HTML内容,可在其中嵌入JSP的其他元素,以实现动态内容生成和业务逻辑处理,使静态页面具备动态交互功能。 3、 JSP模板元素构建网页基本框架,确定页面布局与视觉呈现。 4、 JSP表达...
    不喜欢(0) 点个赞(0)
    随时随地资讯查报价 就上ZOL手机客户端,点击或扫描二维码下载
    立即下载

    BLOG4J高性能的java/jsp版博客系统

    更新时间:2011年12月21日

    用户评分:0 | 0人点评

    软件类型:免费软件

    软件语言:简体中文

    BLOG4J高性能的java/jsp版博客系统
    • 更新时间:2011年12月21日
    • 软件大小:40.7MB
    • 软件分类:JAVA软件
    • 语言种类:简体中文
    • 软件评级:0 人点评