在jstl中输出现在的时间
时间: 2024-05-12 12:13:18 浏览: 11
你可以使用 JSP 标准标签库(JSTL)中的 `<fmt:formatDate>` 标签来输出当前时间。具体代码如下:
```jsp
<%@ taglib uri="http://java.sun.com/jsp/jstl/fmt" prefix="fmt" %>
...
<fmt:formatDate value="${now}" pattern="yyyy-MM-dd HH:mm:ss" />
```
其中,`${now}` 表示当前时间,`pattern` 属性指定时间的格式。执行上述代码后,页面会输出当前时间的字符串形式,例如 `2022-01-01 12:00:00`。
相关问题
设计jsp文件,运用JSTL,编程完成以下功能: 当前时间是6点-11点,输出当前的时间点,并输出上午好; 当前时间是11点-13点,输出当前的时间点,并输出中午好; 当前时间是13点-17点,输出当前的时间点,并输出下午好; 当前时间是17点-20点,输出当前的时间点,并输出晚上好; 不在以上时间段,输出当前时间点,并输出好好休息。
下面是一个简单的实现:
```jsp
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%-- 导入java.util.Date类 --%>
<%@ page import="java.util.Date" %>
<html>
<head>
<title>时间问候</title>
</head>
<body>
<%-- 获取当前时间 --%>
<%
Date currentTime = new Date();
int hour = currentTime.getHours();
%>
<%-- 根据时间段输出问候语 --%>
<c:choose>
<c:when test="${hour >= 6 && hour < 11}">
<p>现在是${hour}点,上午好!</p>
</c:when>
<c:when test="${hour >= 11 && hour < 13}">
<p>现在是${hour}点,中午好!</p>
</c:when>
<c:when test="${hour >= 13 && hour < 17}">
<p>现在是${hour}点,下午好!</p>
</c:when>
<c:when test="${hour >= 17 && hour < 20}">
<p>现在是${hour}点,晚上好!</p>
</c:when>
<c:otherwise>
<p>现在是${hour}点,好好休息!</p>
</c:otherwise>
</c:choose>
</body>
</html>
```
在上面的实现中,我们使用了JSTL的<c:choose>标签和<c:when>标签,根据当前时间的小时数判断输出哪个问候语。在JSP中,我们可以使用Java代码来获取当前时间,这里使用了Date类的getHours()方法来获取当前小时数。同时,我们使用了EL表达式来输出小时数,使代码更加简洁易懂。
运用JSTL,编程完成以下功能: 当前时间是6点-11点,输出当前的时间点,并输出上午好; 当前时间是11点-13点,输出当前的时间点,并输出中午好; 当前时间是13点-17点,输出当前的时间点,并输出下午好; 当前时间是17点-20点,输出当前的时间点,并输出晚上好; 不在以上时间段,输出当前时间点,并输出好好休息。
假设当前时间存储在一个名为`now`的Java Date对象中,可以使用JSTL的`fmt:formatDate`标签获取当前小时数,然后根据不同的时间段输出不同的问候语。
以下是实现代码:
```jsp
<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %>
<%
Date now = new Date();
%>
<fmt:formatDate value="${now}" pattern="HH"/>
<c:choose>
<c:when test="${hour >= 6 && hour < 11}">
<p>当前时间是<c:out value="${hour}"/>点,上午好!</p>
</c:when>
<c:when test="${hour >= 11 && hour < 13}">
<p>当前时间是<c:out value="${hour}"/>点,中午好!</p>
</c:when>
<c:when test="${hour >= 13 && hour < 17}">
<p>当前时间是<c:out value="${hour}"/>点,下午好!</p>
</c:when>
<c:when test="${hour >= 17 && hour < 20}">
<p>当前时间是<c:out value="${hour}"/>点,晚上好!</p>
</c:when>
<c:otherwise>
<p>当前时间是<c:out value="${hour}"/>点,好好休息!</p>
</c:otherwise>
</c:choose>
```
注意需要先导入JSTL的`fmt`标签库,然后使用`<fmt:formatDate>`标签获取当前小时数,最后使用`<c:choose>`和`<c:when>`标签根据不同的时间段输出不同的问候语,使用`<c:otherwise>`标签处理其他情况。