English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
Uno dei principali vantaggi dell'uso di JSP è che è possibile utilizzare tutte le API Java. Questo capitolo esplorerà in dettaglio la classe Date in Java, che si trova nel pacchetto java.util e incapsula la data e l'ora corrente.
La classe Date ha due costruttori. Il primo costruttore inizializza l'oggetto utilizzando la data e l'ora corrente.
Date( )
Il secondo costruttore accetta un parametro, che rappresenta il numero di millisecondi trascorsi dal 1 gennaio 1970 alle ore 00:00:00 fino al tempo da rappresentare.
Date(long millisec)
Dopo aver ottenuto l'oggetto Date, è possibile utilizzare tutti i metodi elencati nella seguente tabella:
Numero di serie | Metodo & 描述 |
---|---|
1 | boolean after(Date date) Restituisce true se è dopo della data fornita, altrimenti restituisce false |
2 | boolean before(Date date) Restituisce true se è prima della data fornita, altrimenti restituisce false |
3 | Object clone( ) Ottieni una copia di questo oggetto |
4 | int compareTo(Date date) Restituisce 0 se è uguale alla data fornita, restituisce un numero negativo se è prima della data fornita, restituisce un numero positivo se è dopo la data fornita |
5 | int compareTo(Object obj) È uguale al metodo compareTo(Date), se obj non è un oggetto della classe Date o del suo sottoinsieme, viene lanciata l'eccezione ClassCastException |
6 | boolean equals(Object date) Restituisce true se la data è la stessa, altrimenti restituisce false |
7 | long getTime( ) Restituisce il numero di millisecondi trascorsi dal 1 gennaio 1970 fino a questo oggetto rappresentato |
8 | int hashCode( ) Restituisce l'hash码 di questo oggetto |
9 | void setTime(long time) Imposta l'ora e la data utilizzando i parametri forniti, il parametro time rappresenta il numero di millisecondi trascorsi dal 1 gennaio 1970 alle ore 00:00:00 fino a time |
10 | String toString( ) Converti questo oggetto in una stringa e restituisci questa stringa |
L'uso di JSP programmazione può ottenere facilmente la data e l'ora corrente, è sufficiente utilizzare il metodo toString() dell'oggetto Date, come segue:
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"% <%@ page import="java.io.*,java.util.*, javax.servlet.*" %> <html> <head> <title>Mostra l'ora e la data corrente</title> </head> <body> <h1>Mostra l'ora e la data corrente</h1> <% Date date = new Date(); out.print("<h2 align=\"center\">" + date.toString() + "</h2>"); %> </body> </html>
将上面的代码保存在 main.jsp 文件中,然后访问 http://localhost:8080/testjsp/main.jsp,运行结果如下:
显示当前时间与日期 Sat Jun 25 17:54:34 CST 2019
刷新 http://localhost:8080/testjsp/main.jsp,就可以发现每次刷新所得到的秒数都不相同。
就像我在开头所提到的,您可以在JSP脚本中使用任何Java方法。如果您想要比较两个日期,
可以参照下面的方法来做:
使用getTime()方法得到毫秒数,然后比较毫秒数就行了。
使用before(),after(),equals()方法。比如,new Date(99,2,12).before(new Date(99,2,18))返回true。
使用compareTo()方法,这个方法在Comparable接口中定义,在Date中实现。
SimpleDateFormat utilizza un metodo sensibile alle localizzazioni per formattare e解析日期,它允许您使用自定义的模式来格式化日期和时间。
Modifica leggermente CurrentDate.jsp per ottenere il seguente codice modificato:
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"% <%@ page import="java.io.*,java.util.*" %> <%@ page import="javax.servlet.*,java.text.*" %> <html> <head> <title>Mostra l'ora e la data corrente</title> </head> <body> <h1>Mostra l'ora e la data corrente</h1> <% Date dNow = new Date(); SimpleDateFormat ft = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); out.print("<h2 align=\"center\">" + ft.format(dNow) + "</h2>"); %> </body> </html>
再次编译 main.jsp,然后访问 http://localhost:8080/testjsp/main.jsp,就可以得到如下结果:
显示当前时间与日期 2019-06-25 17:57:53
要指定模式字符串,需要使用下表列出的格式码:
字符 | 描述 | 示例 |
---|---|---|
G | 时代标识符 | 公元 |
y | 四位年份 | 2001 |
M | 月 | 七月或07 |
d | 日 | 10 |
h | 12小时制,上午/下午 (1~12) | 12 |
H | 24小时制 | 22 |
m | 分钟 | 30 |
s | 秒 | 55 |
S | 毫秒 | 234 |
E | 星期 | 星期二 |
D | 一年中的某天 | 360 |
F | 一个月中某星期的某天 | 2 (七月第二个星期三) |
w | 一年中的某星期 | 40 |
W | 一个月中的某星期 | 1 |
a | 上午/下午 标记 | 下午 |
k | 一天中的某个小时 (1~24) | 24 |
K | 一天中的某个小时,上午/下午 (0~11) | 10 |
z | 时区 | 东部标准时间 |
文本分隔符 | ||
分隔符 | 单引号 |
更多关于Date类的详细信息请查阅Java API文档。