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传递的信息。