点击这里给我发消息 点击这里给我发消息

JSP语法介绍

添加时间:2013-12-6
    相关阅读: 模板 页面 程序 JSP
 

jsp页面中的元素

一,释:三种注释,<!-- -->会打印到客户端,剩下的两种被jsp引擎忽略。

二,模板元素:指jsp中的静态htlm或者xml内容,它影响页面的结构和美观程度,但那是美工的事,与程序员无关。

三,脚本元素:包括声明(declaration),表达式(expression)和scriptlets,除去一些微小的差异外,scriptlets完全可以取代前两种的功能。

四,指令元素:

jsp指令是jsp向jsp包容器发送的消息。他们用来设置全局值,如类声明,要实现的方法,输出内容类型等,并不向客户口产生任何输出。它只影响本jsp文件。

1, age指令:用来定义和操作许多重要的页面的属性,这些属性与jsp包容器进行通信。在jsp的任何地方,以任何顺序,一个页面可以包含任意数量的page指令。但除了import指令外,其它的指令只能出现一次。几个重要的page指令:

<% @ page import =”java.io.*,java.util.*”%>//导入包

<% @ buffer=” ”%>//定义对客户输出流的缓冲模型。

<% @ info=” ”%>//可以使用servlet.getservletinfo()得到该字符串

<% @ iserrorpage=” ”%>

<% @ errorpage=” ”%>

<% @ isthreadsafe=” ” %>//jsp文件是否能多线程使用

2, include指令:asp中用的很多了吧,后面再介绍。

3, taglib指令:详见作者以前文章《struts中的自定义标记》。

五,动作元素

jsp动作元素是使用xml语法写成的,它是在请求处理阶段起作用的,它影响jsp运行时的行为和发送给客户的应答。它们应当由所有的包容器提供,而不管它们的实现如何。

从效果上来说,一个标准动作是能够嵌入到jsp页面之中的一个标记。在页面被编译为servlet期间,当包容器遇到这个标记时,就用相应于请求的预定义的任务的java代码来代替它。

1,<jsp:param>:为其他标签提供附加信息。

<jsp:param name=”paramname” value=”paramvalue”/>

它与<jsp:include>,<jsp:forward>,<jsp:plugin>一起使用。

2,<jsp:include>

如果包含是静态文件,那么仅仅是把内容加到jsp文件中去,这个文件不会被jsp编译器执行,如果是动态文件,将会被jsp编译器材执行。

理论上<% @ page include=””%>与<jsp:include>有所不同,我把它叫做自动刷新,但实际上使用较高版本的tomcat时,他们的功能是一样的。

下面是这一标记的示例代码:

<%@ page contenttype="text/html; charset=gb2312" language="java" %>

<html>

<body>

<%@ include file="static.html" %>

<%//只是把文件包含进来%>

<a href="two.jsp">goto two--></a><br>

this examples show include works

<jsp:include page="two.jsp" flush="true">

<jsp:param name="a1" value="<%=request.getparameter("name")%>" />

<jsp:param name="a2" value="<%=request.getparameter("password")%>" />

</jsp:include>

</body>

</html>

&szlig;this is static.html>

<html>

<body>

<form method=post action="jsp_include.jsp">

<table>

<tr>

<td>please input your name:</td></tr>

<tr><td>

<input type=text name=name>

</td></tr>

<tr><td>input you password:</td>

<td>

<input type=text name=password>

</td>

</tr>

<tr>

<td>

<input type=submit value=login>

</td>

</tr>

</table>

</body>

</html>

&szlig;this is a two.jsp-->

<%@ page contenttype="text/html; charset=gb2312" language="java" %>

举例说明include的工作原理:

<br>

this is a1=<%=request.getparameter("a1")%>

<br>

this is a2=<%=request.getparameter("a2")%>

<br>

<% out.println("hello from two.jsp");%>

3,<jsp:forward> 是允许将请求转发到另一个jsp,servlet,或者静态资源文件。当要根据不同的请求,转换到不同的视图时,这个动作特别有用。但请求被转向到的资源必须位于同jsp发送请求相同的上下文环境中。

<jsp:forward page="url">

<jsp:param name="paramname" value="paramvalue"/>

</jsp:forward>

4,<jsp:usebean> 它用来实例化javabean,或者定位一个已经存在的bean实例,并且把它赋给一个变量名(或者id)。并给定一个具体的范围来确定对象的生命周期。

<jsp:usebean id=”myclassname” scope=”page” class=”class1” type=”class2”/ >

等价于:class2 myclassname=new class1();

page:表示对象与到该页面的特定的请求相关联。

request:表示对象与到该页面的特定的客户请求相联系。如果请求被使用<jsp:forward>标准动作发送到别的jsp,或者使用<jsp:include>动作包含了另外的jsp,则在所涉及的jsp中,该对象是有效的。

session:在当前会话中,在由同一个客户发送的任何的请求中,该对象都是有效的。

application:在同一个web应用程序中,在任何的jsp页面中,该对象都是有效的。

5,<jsp:setproperty> 与<jsp:getproperty>

与usebean一起协作,用来设置bean的简单属性和索引属性,因为它的使用太频繁了,那我就少说点吧,大家在具体代码中学习。

<jsp:serproperty name=”beanname” bopertydetails />

a, property=*;

b,property=”propertyname” param=”parametername”

在bean中的属性名与request中参数名不同时使用这个方法。

c,property=”propertyname”

bean中的属性与request中的参数名必须相同。

d,property=”propertyname” value=”propertyvalue”

咨询热线:020-85648757 85648755 85648616 0755-27912581 客服:020-85648756 0755-27912581 业务传真:020-32579052
广州市网景网络科技有限公司 Copyright◎2003-2008 Veelink.com. All Rights Reserved.
广州商务地址:广东省广州市黄埔大道中203号(海景园区)海景花园C栋501室
= 深圳商务地址:深圳市宝源路华丰宝源大厦606
研发中心:广东广州市天河软件园海景园区 粤ICP备05103322号 工商注册