Работа с датой и временем
Дата и время используются крайне часто, именно поэтому класс java.util.Date имеет большое количество удобных методов.
Данный класс содержит следующие методы:
№ | Метод и его описание |
---|---|
1 | boolean after(Date date) Показывает, является ли дата, вызывающая его, более поздней, чем указанная в аргументе метода. |
2 | boolean before(Date date) Показывает, является ли дата, вызывающая его, более ранней, чем указанная в аргументе метода. |
3 | int compareTo(Date date) Сравнивает даты. Если равны – возвращает 0. Если вызывающая дата более ранняя – отрицательное значение. Если более поздняя – положительное. |
4 | long getTime( ) Возвращает время в миллисекундах после 1 Января 1970 года. |
5 | void setTime(long time) Устанавливает время, указанное в миллисекундах после 1 Января 1970 года. |
Для понимания того, как этот класс может быть использован на практике, рассмотрим простой пример.
В качестве основы возьмем приложение из данной статьи.
Класс DateTimeDemo.java
package net.proselyte.servletstutorial;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.io.PrintWriter;
import java.util.Date;
/**
* This is simple servlet that demonstrates work with {@link java.util.Date} class.
*
* @author Eugene Suelimanov
*/
public class DateTimeDemo extends HttpServlet {
public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
response.setContentType("text/html");
String docType = "
<
!DOCTYPE html
>
";
String title = "Date and Time Demo";
Date currentDate = new Date();
PrintWriter writer = response.getWriter();
writer.println(docType + "
<
html
>
" +
"
<
head
>
" +
"
<
title
>
" + title + "
<
/title
>
" +
"
<
/head
>
" +
"
<
body
>
" +
currentDate.toString() +
"
<
/body
>
" +
"
<
/html
>
");
}
public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
doGet(request, response);
}
}
Файл web.xml
<
!DOCTYPE web-app PUBLIC
"-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
"http://java.sun.com/dtd/web-app_2_3.dtd"
>
<
web-app
>
<
display-name
>
Servlets Tutorial
<
/display-name
>
<
servlet
>
<
servlet-name
>
SimpleServlet
<
/servlet-name
>
<
servlet-class
>
net.proselyte.servletstutorial.SimpleServlet
<
/servlet-class
>
<
/servlet
>
<
servlet
>
<
servlet-name
>
DateTimeDemo
<
/servlet-name
>
<
servlet-class
>
net.proselyte.servletstutorial.DateTimeDemo
<
/servlet-class
>
<
/servlet
>
<
servlet-mapping
>
<
servlet-name
>
SimpleServlet
<
/servlet-name
>
<
url-pattern
>
/SimpleServlet
<
/url-pattern
>
<
/servlet-mapping
>
<
servlet-mapping
>
<
servlet-name
>
DateTimeDemo
<
/servlet-name
>
<
url-pattern
>
/DateTimeDemo
<
/url-pattern
>
<
/servlet-mapping
>
<
/web-app
>
Выполним в консоли команду:
mvn tomcat7:run
Откроем браузер и перейдем по ссылке:
http://localhost:8088/DateTimeDemo
В результате получим страницу с текущей датой и временем: