虽然现在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>