File-New-Project-Java-TomcatProject 新建项目,名为:TomcatPrj(该项目被自动放在Eclipse的Workspace下面)
在TomcatPrj右键新建JSP,名为:MyJsp.jsp
《MyJsp.jsp内容》
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<base href="<%=basePath%>">
<title>My JSP 'MyJsp.jsp' starting page</title>
<meta http-equiv="pragma" content="no-cache">
<meta http-equiv="cache-control" content="no-cache">
<meta http-equiv="expires" content="0">
<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
<meta http-equiv="description" content="This is my page">
<!--
<link rel="stylesheet" type="text/css" href="styles.css">
-->
</head>
<body>
This is my JSP page. <br>
<% out.println("Test:");
for(int i=0;i<10;i++){
out.println("try <p></p>");
}
Date objDate = new Date();
//This is the Test scriptlet
out.println("<P> 星期" + objDate.getDay() + "</p>");
out.println("<p> Hello the time now is" + objDate + "</p>");
%>
<P>
<TABLE border="2" width="100%">
<% out.println("Creat Table");
int n=3;
for(int i=0; i<n; i++){
out.println("<TR>");
int m=4;
for(int j=0;j<m;j++){
out.println("<TD>" + i + "</TD>");
}
out.println("</TR>");
}
%>
</TABLE>
</body>
</html>
************************************************************************************
结果:
浏览器里 http://127.0.0.1:8080/TomcatPrj/MyJsp.jsp
可以看到,显示的是表格,根据n和m的数值不同,可以动态显示多行或者多列的表格。
************************************************************************************
解释:
<% %>括起来的叫做:scriptlet
可以看到HTML里的标签被当作字符串在scriptlet的java.util.out.println()里显示在页面,任何的循环控制表达式,比如“while”或者“for”循环以及“if”语句都可以控制HTML,如果HTML处在一个循环中它就会在每一次的循环中执行一次。