求知若渴,谦卑若愚

少说话,多做事,很难
posts - 3, comments - 2, trackbacks - 0, articles - 0
  BlogJava :: 首页 :: 新随笔 :: 联系 :: 聚合  :: 管理

jsp声明与jsp代码片段的区别

Posted on 2010-07-29 20:02 清流鱼 阅读(525) 评论(0)  编辑  收藏
没有在意jsp声明与jsp代码片段的区别,但发现一个奇怪之处,就做了一个测试,果然不虚!先上jsp声明代码:
 1 <%@ page language="java" contentType="text/html; charset=UTF-8"
 2     pageEncoding="UTF-8"%>
 3 <%@ page import="java.util.Date" %>
 4 <%@ page import="java.text.SimpleDateFormat" %>
 5 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
 6 <html>
 7 <head>
 8 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
 9 <title>Insert title here</title>
10 <!-- 第一次请求会执行,刷新后datetime值不会变化 -->
11 <%! 
12     Date date=new Date(); 
13     SimpleDateFormat sdf=new SimpleDateFormat("yyyy/MM/dd HH:mm");
14     String datetime=sdf.format(date);
15 %>
16 </head>
17 <body>
18 当前日期:<%=datetime %>
19 </body>
20 </html>
再上jsp代码片段代码:
 1 <%@ page language="java" contentType="text/html; charset=UTF-8"
 2     pageEncoding="UTF-8"%>
 3 <%@ page import="java.util.Date" %>
 4 <%@ page import="java.text.SimpleDateFormat" %>
 5 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
 6 <html>
 7 <head>
 8 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
 9 <title>Insert title here</title>
10 
11 </head>
12 <body>
13 <!-- 页面每次刷新都会执行 -->
14 <%
15     Date date=new Date(); 
16     SimpleDateFormat sdf=new SimpleDateFormat("yyyy/MM/dd HH:mm");
17     String datetime=sdf.format(date);
18 %>
19 当前日期:<%=datetime %>
20 </body>
21 </html>
代码非常简单,但在web服务器上运行页面时,每过一分钟刷新页面,就会发现jsp声明代码中的当前日期始终不会变化,而jsp代码片段中的当前日期就会随着系统时间而发生变化。
根据这个差别,当我们写jsp声明、jsp代码片段时就要切切注意,我们获取的变量值是不是想要动态变化的!



只有注册用户登录后才能发表评论。


网站导航: