JSP语法基础
显式注释:HTML注释:最终会在发送到客房端
隐式注释:JAVA注释:不会在客房端显示
JSP中可用如下三种注释
<html>
<head>
<title>jsp</title>
</head>
<body>
<!-- HTML注释,此注释内容会发送到客户端-->
<%
// 可以使用JAVA的单行注释 ,在客户端不会显示
/*
多行注释,客户端不会显示
*/
%>
<%--
JSP中使用的注释,客户瑞不显示
--%>
</body>
</html>
声明语句:
<%!声明语句;%>
例<%!String test=”Hello word!”;%>
<%!
//全局变量,只能被赋值一次
int i=0;
%>
<%=++i%>
<%
//局变量,
int i=0;
%>
<%=++i%>
全局变量在%号后有叹号,局部变量没有叹号
表达式:
<%=JAVA表达式%>
脚本代码:
<%int i=0;%>
<%out.print(“Hello word”);%>
提示:在开发时尽量不要使用out.println()输出,而使用<%=%>进行输出
目的:达到HTML代码与JAVA代码的分离
范例:打印9乘9表格
第一种:out.println()输出
<!DOCTYPE HTML PUBLIC "-//W 3C //DTD HTML 4.0 Transitional//EN"> <HTML> <HEAD> <TITLE> New Document </TITLE> </HEAD>
<BODY> <% //out.println("<table border=/"1/">"); for(int i=0;i<9;i++) { out.println("<tr>"); for(int j=0;j<9;j++) { out.println("<td>"+i*j+"</td>"); } out.println("</tr>"); } //out.println("</table>"); %> </BODY> </HTML> |
问题;JAVA与HTML关系过于紧密
修改后的代码:
<!DOCTYPE HTML PUBLIC "-//W 3C //DTD HTML 4.0 Transitional//EN"> <HTML> <HEAD> <TITLE> New Document </TITLE> </HEAD> <table border="1">; <BODY> <%
for(int i=0;i<9;i++) { %>
<tr>
<% for(int j=0;j<9;j++) { %> <td><%=i*j%></td> <% } %> </tr> <% } %>
</table> </BODY> </HTML> |
通过以上代码,可以发现程序中包含了过多的:Scriptlet(脚本小程序)
<%
If(XXX)
%>
在开发中建议用表达式(<%=%>)代表out.println();