jsp语法基础
在完成了安装之后,我们来看一看jsp的语法。为了方便学习,你可以下载一个语法卡。但是,web开发人员一般不应做过多的java开发工作。除了几个方法调用外,你的jsp web页面中的java代码应该是很少的。
知道了这些之后,我们先来看一看jsp指示符和脚本元素,然后再解释一下javabean和jsp隐含对象。共有五种jsp指示符和脚本元素。在jsp 1.0中,大多数jsp是包含在由“<%”开始由“%>”结束的单一标记中的。在更新的jsp 1.1规范中,还有符合xml要求的版本。
jsp指示符和脚本元素 指示符 <%@ direcive %>
声明 <%! declaration %>
表达式 <%= expression %>
代码段/ scriptlet <% code fragment %>
注释 <%– comment –%>
指示符
jsp的指示符供jsp引擎使用。它们不产生任何可见的输出,而是告诉引擎如何处理jsp页面的其它部分。它们总是包含在<%@ ?%>标签中。两个主要的指示符是page和include。在这里不讨论taglib指示符,在jsp 1.1中,taglib可以用来创建自定义标记。 你几乎可以在差不多所有jsp页面的顶部找到page指示符。尽管不是必需的,但它可以让你做一些设置,如到哪里查找支持的java的类:
<%@ page import="java.util.date" %>
在出现运行时间java问题时,把浏览者引入哪个页面:
<%@ page errorpage="errorpage.jsp" %>
以及是否需要在会话级别上管理用户信息,这有可能需要跨载多个web页面(更多信息将在后面的javabean会话中讲到):
<%@ page session="true" %> include指示符让你把内容分割成更多的可管理元素,例如某些元素就用于引用共用的页眉和页脚。引用的页面可以是固定的html页,也可以是更多的jsp内容:
<%@ include file="filename.jsp" %>
声明
jsp的声明可以定义页面级的变量来保存信息,或者是定义jsp页面的其它部分需要的方法。如果你发现引用了太多的代码,通常使用一个单独的java类会更好。声明写在<%! ?%>标记中。由于任何内容都必须是合法的java语句,因此变量声明总是用分号来结束:<%! int i=0; %>。
表达式
在jsp的表达式中,表达式的结果被转换成字符串并被直接引用到输出页面中。jsp的表达式包含在<%= ?%>标记中。表达式不需要分号,除非分号是作为引号中的字符串的一部分。
<%= i %>
<%= "hello" %>
代码段/scriptlet
jsp代码段或scriptlet包含在<% ?%>标记中。这些java代码在web服务器接收请求时运行。在scriptlet的周围是原始的html或xml,代码段可以让你创建有条件的可执行代码,或者是创建使用另外一段代码的元素。例如,下面这段在h1、h2、h3和h4标记中显示字符串“hello”的代码,就结合了表达式和scriptlet的使用。scriptlet并不限制在一行源代码中:
<% for (int i=1; i<=4; i++) { %>
<h<%=i%>>hello</h<%=i%>>
<% } %>
注释
最后这个jsp关键元素是注释。尽管你总是可以在文件中使用html注释,但如果用户查看页面的源文件,他们就可以看到这些注释。如果你不想让用户看到你的注释,你就需要把它们写在<%– ?–%>标记里:
<%– comment for server side only –%>
