- 内容提要
- 作者简介
- 译者简介
- 前言
- HTTP
- Servlet 和 JSP
- 下载 Spring 或使用 STS 与 Maven/Gradle
- 手动下载 Spring
- 使用 STS 和 Maven/Gradle
- 下载 Spring 源码
- 本书内容简介
- 下载示例应用
- 第 1 章Spring 框架
- 第 2 章模型 2 和 MVC 模式
- 第 3 章Spring MVC 介绍
- 第 4 章基于注解的控制器
- 第 5 章数据绑定和表单标签库
- 第 6 章转换器和格式化
- 第 7 章验证器
- 第 8 章表达式语言
- 第 9 章JSTL
- 第 10 章国际化
- 第 11 章上传文件
- 第 12 章下载文件
- 第 13 章应用测试
- 附录 A Tomcat
- 附录 B Spring Tool Suite 和 Maven
- 附录 C Servlet
- 附录 D JavaServer Pages
- 附录 E 部署描述符
文章来源于网络收集而来,版权归原创者所有,如有侵权请及时联系!
8.6 引用静态属性和静态方法
您可以引用在任何 Java 类中定义的静态字段和方法。 但是,在可以在 JSP 页面中引用静态字段或方法之前,必须使用 page 伪指令导入类或类包。 java.lang 包是一个例外,因为它是自动导入的。
例如,以下 page 指令导入 java.time 包。
<%@page import="java.time.*"%>
或者,你可以导入单个类,例如
<%@page import="java.time.LocalDate"%>
限制可以引用 LocalDate 类的静态方法:now 方法,如下:
Today is ${LocalDate.now()}
在本章后面的章节中,我们将学习如何格式化日期。
如下是引用类的静态成员和静态字段的另一个例子。
<p>
√ <span style =“text-decoration:overline;”> 36 </ span>
= $ {Math.sqrt(36)}
</p>
<p>
π = ${Math.PI}
</p>
Math 是 java.lang 包下类,无需额外的导入。图 8.1 展示了以上代码的 JSP 页面效果。
图 8.1 引用类静态成员
此外,还有一种导入包的方法,是在 ServletContextlistener 中以编程方式导入。清单 8.1 显示了一个监听器,它导入两个包 java.time 和 java.util。
清单 8.1 编程导入类型
package listener;
import javax.el.ELContextEvent;
import javax.servlet.ServletContextEvent;
import javax.servlet.ServletContextListener;
import javax.servlet.annotation.WebListener;
import javax.servlet.jsp.JspFactory;
@WebListener
public class ELImportListener implements ServletContextListener {
@Override
public void contextInitialized(ServletContextEvent event) {
JspFactory.getDefaultFactory().getJspApplicationContext(
event.getServletContext()).addELContextListener(
(ELContextEvent e) -> {
e.getELContext().getImportHandler().
importPackage("java.time");
e.getELContext().getImportHandler().
importPackage("java.util");
});
}
@Override
public void contextDestroyed(ServletContextEvent event) {
}
}
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论