【www.gdgbn.com--js教程】
Scriptlets
我们已经看到如何嵌入的Java表达的JSP页面把他们之间的<% = %>字符序列。
但很难做节目只是把里面的Java表达式的HTML 。
JSP技术也可以让你写块Java代码内的JSP技术。您做到这一点,将您的Java代码之间的“ %和% ”字符(就像表达,但没有迹象=开始时的顺序。 )
这个代码块被称为“ scriptlet ” 。本身,一个scriptlet不会有助于任何HTML (尽管它可以,因为我们将看到楼下。 )在scriptlet包含Java代码是每一次执行的JSP技术是援引。
以下是修改后的版本的JSP技术从上一节,增加了scriptlet 。
<%
// This is a scriptlet. Notice that the "date"
// variable we declare here is available in the
// embedded expression later on.
System.out.println( "Evaluating date now" );
java.util.Date date = new java.util.Date();
%>
Hello! The time is now <%= date %>
如果您运行上面的例子中,您会发现输出从“ System.out.println ”的服务器日志。这是一个方便的方法做简单的调试(有些服务器也有技术调试JSP技术在IDE中。查看您的服务器的文件,看它是否提供了这样一种技术。 )
据本身就是一个scriptlet不会产生的HTML 。如果scriptlet要产生的HTML ,它可以使用一个变量所谓的“去” 。这个变数并不需要宣布。它已经预先为scriptlets ,加上其他一些变数。以下示例显示如何scriptlet可以产生HTML输出。
<%
// This scriptlet declares and initializes "date"
System.out.println( "Evaluating date now" );
java.util.Date date = new java.util.Date();
%>
Hello! www.111cn.net
<%
// This scriptlet generates HTML output
out.println( String.valueOf( date ));
%>
另一个非常有用的预先定义的变量是“请求” 。这是类型javax.servlet.http.HttpServletRequest
“要求”在服务器端处理是指交易之间的浏览器和服务器。当有人点击或输入网址,浏览器发出了一个“请”到服务器的该网址,并显示返回的数据。作为这项工作的一部分“要求” ,各种数据,包括文件浏览器想从服务器,如果请求是来自紧迫的一个提交按钮,信息的用户已进入的形式领域。
在JSP的“请求”的变数是用来获取信息的请求派出的浏览器。例如,你可以找到的名字客户端的主机(如果有的话,否则的IP地址将被退还。 )让我们修改代码所示:
<%
// This scriptlet declares and initializes "date"
System.out.println( "Evaluating date now" );
java.util.Date date = new java.util.Date();
%>
Hello! The time is now www.111cn.net
<%
out.println( date );
out.println( "
Your machine"s address is " );
out.println( request.getRemoteHost());
%>
练习:写JSP技术到输出的整个路线, “您好!现在是时候... ”但使用scriptlet全面字符串,其中包括HTML标记