初探JodaTime
在学习java之初时就使用过jdk自带的java.util.Calendar
,近期的项目中需要达到类似功能的时候使用了JodaTime。
Joda-Time 令时间和日期值变得易于管理、操作和理解。事实上,易于使用是 Joda 的主要设计目标。其他目标包括可扩展性、完整的特性集以及对多种日历系统的支持。并且 Joda 与 JDK 是百分之百可互操作的,因此无需替换所有 Java 代码,只需要替换执行日期/时间计算的那部分代码。
以下是DateTimeUtil.class的部分内容。
import org.apache.commons.lang3.StringUtils; import org.joda.time.DateTime; import org.joda.time.format.DateTimeFormat; import org.joda.time.format.DateTimeFormatter; import java.util.Date; public class DateTimeUtil { public static final String STANDARD_FORMAT = "yyyy-MM-dd HH:mm:ss"; public static Date strToDate(String dateTimeStr, String formatStr){ DateTimeFormatter dateTimeFormat = DateTimeFormat.forPattern(formatStr); DateTime dateTime = dateTimeFormat.parseDateTime(dateTimeStr); return dateTime.toDate(); } public static String dateToStr(Date date,String formatStr){ if(date==null){ return StringUtils.EMPTY; } DateTime dateTime = new DateTime(date); return dateTime.toString(formatStr); } public static Date strToDate(String dateTimeStr){ DateTimeFormatter dateTimeFormat = DateTimeFormat.forPattern(STANDARD_FORMAT); DateTime dateTime = dateTimeFormat.parseDateTime(dateTimeStr); return dateTime.toDate(); } public static String dateToStr(Date date){ if(date==null){ return StringUtils.EMPTY; } DateTime dateTime = new DateTime(date); return dateTime.toString(STANDARD_FORMAT); } }
如要使用jodatime,需要在pom.xml中添加以下依赖
<dependency>
<groupId>joda-time</groupId>
<artifactId>joda-time</artifactId>
<version>2.3</version>
</dependency>
推荐文章:http://www.ibm.com/developerworks/cn/java/j-jodatime.html