虽然现在JSP用得不多了 ,但是很多学习JSP也就需要几天时间,而且很多项目仍然使用JSP,因此我也花几天时间学习一下JSP,要求自己能看懂代码就行。
1、声明脚本(基本不用)
声明脚本用<%! %>包围,
作用:可以给jsp翻译出来的java类定义属性和方法,甚至是静态代码块、内部类等。
实例:
<%@ page import="java.util.Map" %>
<%@ page import="java.util.HashMap" %>
<%--
Created by IntelliJ IDEA.
User: pc
Date: 2021/7/26
Time: 12:28
To change this template use File | Settings | File Templates.
--%>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
<title>Title</title>
</head>
<body>
<%-- 声明脚本(基本不用)--%>
<%--
声明脚本的格式是: <%! 声明java代码 %>
作用:可以给jsp翻译出来的java类定义属性和方法,甚至是静态代码块、内部类等
--%>
<%-- 1、 声明类属性--%>
<%!
private Integer id;
private String name;
private static Map<String,Object> map;
%>
<%-- 2、声明静态代码块--%>
<%!
static {
map = new HashMap<String, Object>();
map.push("key1","value1");
map.push("key2","value2");
map.push("key3","value3");
}
%>
<%-- 3、声明方法--%>
<%!
public int hello(){
return 12;
}
%>
<%-- 4、声明内部类--%>
</body>
</html>
2、表达式脚本(经常使用)
表达式脚本用<%= %>包围,可以输出整形、浮点型、字符串、对象
需要注意的是,我们会习惯性地给对象后面加分号。但表达式脚本中是不能出现分号的。
实例:
<%--
Created by IntelliJ IDEA.
User: pc
Date: 2021/7/26
Time: 14:28
To change this template use File | Settings | File Templates.
--%>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
<title>Title</title>
</head>
<body>
<%--
表达式脚本(常用)
格式: <%= 表达式 %>
作用是在jsp页面上输出数据
可以输出整形、浮点型、字符串、对象
不能以分号结束
--%>
<%=12%>
<%=12.3%>
<%="hello world"%>
</body>
</html>
3、代码脚本
以<% %>包围
实例:
<%--
Created by IntelliJ IDEA.
User: pc
Date: 2021/7/26
Time: 14:47
To change this template use File | Settings | File Templates.
--%>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
<title>Title</title>
</head>
<body>
<%-- 代码脚本:
格式:
<%
java代码
%>
只要是写在翻译后的java文件的_jspService方法里的代码,都可以写在代码脚本中
--%>
<%
int i = 12;
if(i == 12){
System.out.println("哈哈哈");
} else{
System.out.println("嘿嘿嘿");
}
%>
<%--还可以由多个代码脚本组合起来 也可以将代码脚本和表达式脚本组合使用(不能嵌套)--%>
<%
for (int j=0;j<10;j++){
%>
<%=j%>
<%
System.out.println(j);
}
%>
</body>
</html>