JSP基礎語法
- <%%>
- JSP獲得變量的值 <%= 表達式或者變量值 %>
- JSP定義局部變量:寫一段Java代碼 <% Java代碼 %>
注意:必須嚴格遵守Java規範 - JSP定義全局變量 <%! 全局變量或方法 %>
簡化符:因爲HTML是標記語言,我們需要一些標記
EL表達式和JSTL標籤
- El表達式
格式:${代碼}
${} 和<%= %> 聯繫和區別
- EL表達式一般用來輸出變量的值;而不能是一個對象;
- tomcat會在jsp解析的時候將_jspService轉換成對應的doget。dopost,我們正常方式無法直接調用!
<%@ page import="java.util.Date" %>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<%!
int i = 0;
public int add(int a,int b){
return a+b;
}
%>
<%
//Java代碼
String name = "暮凌寒雪";
int age = 18;
int j = 0;
Date date = new Date();
out.write((java.lang.String)
org.apache.jasper.runtime.PageContextImpl.proprietaryEvaluate
("${name}", java.lang.String.class,
(javax.servlet.jsp.PageContext)_jspx_page_context,
name
)
);
%>
<html>
<head>
<title>$Title$</title>
</head>
<body>
<h1>
日期:<%=new Date()%>
<%--
日期: ${new Date()}會報錯
--%>
名字:<%=name%>
名字:${name}
年齡:<%=age%>
i:<%=i++%>
j:<%=j++%>
</h1>
</body>
</html>
結果可以看到全局變量在任意頁面刷新都會相加,而局部頁面每次刷新後就會重置。
總結:<%=%>是用來輸出java變量和表達式的,而EL表達式主要是用來獲取session,cookie傳遞的信息。