JSP 基础语法

除了HTML标签外,在JSP中还提供了如下的5种构建网页内容时所需要的元素:

  • 指令 Directive
    • <%@ 指令名 属性="值"%>
      • page 导入包
      • include 导入脚本语言文件
      • taglib 导入页面编码的字符集
  • 声明 Declaration
    • <%! 声明部分 %>
  • 程序代码 Scriptlet
    • JSP小脚本部分会转换成_jspService()方法里的可执行代码,JSP页面里的所有静态内容都将由_jspService方法里的输出语句来来输出。
    • 因为如上原因,JAVA中不允许在方法中定义方法,所以在脚本中不能定义方法。
  • 表达式 Expression
    • 输出表达式 :<%=表达式%>    (表达式语法后面不能有分号) 代替了原来的out.println输出语句

注释:

  1. 显示注释,客户端可见 <!-- comment [ <%= expression %> ] -->
  2. 隐藏注释 ,客户端不可见 <%-- comment --%>

脚本:

  一个JSP页面对应一个Servlet,所以在JSP中定义的变量其实是Servlet中的成员变量。在WEB服务中,servelt只有一个实例对象,所以所有客户端共享使用同一个selvert。

include指令:

  1. 静态include语句 :<%@ include file="相对路径" %> 可以将一个外部文件嵌入到当前的JSP文件中,同时解析这个页面中的JSP语句。
  2. 动态include语句:<jsp:include page="{relativeUEL | <%=expression%>}" flush="true">  flush用于指定输出缓存是否转移到被导入文件中。

区别:静态的include语句,能够把其他目标页面的其他编译指令也包含进来,但是动态include则不会。静态的include编译指令会将被包含的页面加入本页面,融合成一个页面,因此被包含的页面甚至不需要时一个完整的页面。

JavaBean: 如果在多个JSP 需要重复使用某段代码,我们可把这段代码定义成Java类的方法,然后让多个JSP页面调用该方法即可,这样可较好地实现代码复用。

  • useBean:用于在一个JSP页面中初始化一个Java实例。
    • 语法:<jsp:useBean id="name" class="classname" scope="page | request |session | application">
      • page:该JavaBean实例仅在该页面有效
      • request:本次请求有效
      • session:本次session内有效
      • application:本应用内一直有效
  • setProperty:用于为JavaBean实例的属性设置值。
  • getProperty:用于输出JavaBean实例的属性。

 

posted @ 2014-04-30 14:54  phk52  阅读(127)  评论(0编辑  收藏  举报