jsp---->Jsp语法

1、jsp注释

JSP注释常用的有两种:HTML注释和隐藏注释(JSP专有注释)

◆显式注释:HTML 注释:最终会发送到客户端,通过右键查看源文件可以发现这些注释

注释说明:能在客户端显示的一个注释,标记内的所有JSP脚本元素、指令和动作正常执行,也就是说编译器会扫描注释内的代码。

HTML语法:<!—注释-->

语法示例:

例1

<!—这段注释显示在客户端的浏览器页面中 -->

在客户端的HTML源代码中产生和上面一样的数据;
例2

<!—这个页面加载于 <%= (new java.util.Date()).toString()%> -->

在客户端的HTML源代码中显示为:

<!--这个页面加载于Sat May 08 19:51:56 CST 2010 -->

小结:可以在注释中使用任何有效的JSP表达式。表达式是动态的,当用户第一次调用该页面或该页面后来被重新调用时,该表达式将被重新赋值。JSP引擎对HTML注释中的表达式执行完后,其执行的结果将代替JSP语句。然后该结果和HTML注释中的其它内容一起输出到客户端。在客户端的浏览器中,浏览者可通过查看源文件的方法看到该注释。

◆隐藏注释(JSP注释):

注释说明:用隐藏注释标记的字符会在JSP编译时被忽略掉,标记内的所有JSP脚本元素、指令和动作都将不起作用。也就是说,JSP编译器不会对注释符之间的任何语句进行编译,其中的任何代码都不会显示在客户端浏览器的任何位置。

JSP语法:<%--注释  --%>

注释示例:

<%@ page language="java" %>

<html>

<head><title>注释测试</title></head>

<body>

<h2>注释测试</h2>

<%--在页面源代码中,这个注释是看不见的 --%>

</body>

</html>

小结:JSP引擎对JSP注释不作任何处理。JSP注释既不发送到客户端,也不在客户端的JSP页面中显示。在客户端查看源文件时也看不到。因此,如果只想在JSP页面源程序中写文档说明时,JSP注释是很有用的。

2、jsp输出

<%! %>:                             声明全局变量、类、方法全局变量,实例化一次,
<%=输出值%>:                  表达式 类似于:out.println() ;

<% int i=0; out.print(i);%>     java脚本代码中声明的为局部变量

<html>
<head>
	<title>JSP</title>
</head>
<body>
<table border="1">
<%
	// 打印9×9的表格
	for(int i=0;i<9;i++)
	{
%>
		<tr>
<%
		for(int j=0;j<9;j++)
		{
%>
			<td><%=i*j%></td>
<%
		}
%>
		</tr>
<%
	}
%>
</table>
</body>
</html>

3、Scriptlet(脚本小程序)

< %
if(xxx)
{
%>
< %
}
%>

4、form 表单提交方式的讨论:
· post:提交内容不会显示,没有长度要求
· get:提交的内容会显示出来 , 地址栏中的长度只有 4k~5k,如果传递大数据,则无法使用

5、page指令

<%@ page contentType="text/html;charset=gb2312"%>
< %@ page import="java.util.*"%>

<%@ page import="java.io.*,java.sql.*"%>



       <%@ page 

 

  [ language="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" ]

 

  %>

属性说明

  • language="java"   声明脚本语言的种类,暂时只能用"java"
  • 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对象.
  •  contentType="mimeType [ ;charset=characterSet ]" | "text/html;charset=ISO-8859-1" 设置MIME类型 。缺省MIME 类型是: text/html, 缺省字符集为 ISO-8859-1. 解决中文乱码问题

posted on 2012-08-17 09:46  小强斋太  阅读(207)  评论(0编辑  收藏  举报

导航