java工具类开发之日期工具类DateUtils和读取属性配置文件工具类PropertiesUtils

阅读: 评论:0

java工具类开发之日期工具类DateUtils和读取属性配置文件工具类PropertiesUtils

java工具类开发之日期工具类DateUtils和读取属性配置文件工具类PropertiesUtils

java工具类开发之日期工具类和读取属性配置文件工具类

      很多时候,我们采用java来开发相关应用软件的时候,需要自己开发一些工具类并把它封装在utils工具类中,然后在需要使用的地方直接“类.方法”直接调用!本文将介绍两个比较常用的工具类,分别是日期工具类DateUtils和读取属性配置文件工具类PropertiesUtils。

      下面介绍第一个工具类DateUtils,主要有以下功效:

(1)字符串转日期方法:可以转换多种格式的字符串日期

(2)日期转字符串方法

(3)获取当前月的第一天方法: 采用Calendar类实现

(4)获得系统当前的时间方法: 可用于命名一些文件,如上传的图片

     好了,废话不多说,上码了:

package com.steadyjack.utils;DateFormat;
ParseException;
SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
import java.util.GregorianCalendar;
import Matcher;
import Pattern;/*** 日期工具类:可以处理多种日期 格式* @author 钟林森**/
public class DateUtils {//多种日期格式对应的正则表达式private static String[] dateTimeReg = {"\s*\d{1,4}-\d{1,2}-\d{1,2}\s+\d{1,2}:\d{1,2}:\d{1,2}\s*", "\s*\d{1,4}-\d{1,2}-\d{1,2}\s+\d{1,2}:\d{1,2}\s*","\s*\d{1,4}-\d{1,2}-\d{1,2}\s+\d{1,2}\s*","\s*\d{1,4}-\d{1,2}-\d{1,2}\s*","\s*\d{1,4}/\d{1,2}/\d{1,2}\s+\d{1,2}:\d{1,2}:\d{1,2}\s*", "\s*\d{1,4}/\d{1,2}/\d{1,2}\s+\d{1,2}:\d{1,2}\s*","\s*\d{1,4}/\d{1,2}/\d{1,2}\s+\d{1,2}\s*","\s*\d{1,4}/\d{1,2}/\d{1,2}\s*"};//多种日期格式private static DateFormat[] dateFormat = {new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"),new SimpleDateFormat("yyyy-MM-dd HH:mm"),new SimpleDateFormat("yyyy-MM-dd HH"),new SimpleDateFormat("yyyy-MM-dd"),new SimpleDateFormat("yyyy/MM/dd HH:mm:ss"),new SimpleDateFormat("yyyy/MM/dd HH:mm"),new SimpleDateFormat("yyyy/MM/dd HH"),new SimpleDateFormat("yyyy/MM/dd"),};/*** 获取待匹配的字符串对应的正则表达式的下标 index* @param dateStr* @return*/public static int getRegIndex(String dateStr){Pattern pattern = null;int i=0;for (; i<dateTimeReg.length; i++) {//compile(正则表达式)pattern = Patternpile(dateTimeReg[i]);//matcher(预匹配的字符串)Matcher mat = pattern.matcher(dateStr);  //find() 是否匹配成功boolean isMatch = mat.find();if (isMatch)break;}return i;}/*** 字符串转日期类:可以转换多种格式的字符串日期* @param dateStr* @return*/public static Date strToDate(String dateStr){if (dateStr==null || dateStr=="") {return null;}//匹配成功:那么那个i就是我们所需的,目的是为了可以从  dateFormat 取到需要转换为指定的时间格式int i=im());Date resultDate=null;if (i<dateTimeReg.length) {try {resultDate=dateFormat[i].parse(dateStr);} catch (ParseException e) {e.printStackTrace();}}return resultDate;}/*** 日期转字符串* @param paramDate* @param dateFormat* @return*/public static String dateToStr(Date paramDate,String dateFormat){if (paramDate==null || dateFormat==null || dateFormat=="") {return null;}SimpleDateFormat sdf=new SimpleDateFormat(dateFormat);return sdf.format(paramDate);}/*** 获取当前月的第一天: 采用Calendar类实现* @return*/public static Date getFirstDayInMonth(){Calendar calendar&#Instance();calendar.set(GregorianCalendar.DAY_OF_MONTH, 1);Time();}/*** 获得系统当前的时间: 可用于命名一些文件,如上传的图片* @author 钟林森* @return* @throws Exception*/public static String getCurrentDateStr()throws Exception{Date date=new Date();SimpleDateFormat sdf=new SimpleDateFormat("yyyyMMddhhmmss");return sdf.format(date);}}

     下面是用于测试DateUtils的单元测试类(注意导入 junit)

package stUtils;import java.util.Date;import org.junit.Test;
import com.steadyjack.utils.DateUtils;public class DateTest {@SuppressWarnings("deprecation")@Testpublic void test() {String dateStr="2014/10/21 09:02:01";Date resultDate=DateUtils.strToDate(dateStr);System.out.println("字符串转日期: "&#LocaleString());}@Testpublic void test2(){Date tempDate=new Date(new Date().getTime());System.out.println("日期转字符串: "+DateUtils.dateToStr(tempDate, "yyyy-MM-dd HH:mm:ss"));}@Testpublic void test3(){Date resultDate&#FirstDayInMonth();System.out.println("当前月的第一天: "+DateUtils.dateToStr(resultDate, "yyyy-MM-dd"));}@Testpublic void test4() throws Exception{System.out.println("系统当前时间: "&#CurrentDateStr());}}

     下面介绍 读取属性配置文件类 PropertiesUtils,具有下面的功能:

(1)读取属性配置文件的某个属性的值

      这个工具类在java EE企业级应用中一些监听器对应的执行方法可能需要用到,用来读取像“数据库配置文件”,“系统配置文件”等配置文件中相关属性的值。

     下面是代码:

package com.steadyjack.utils;import java.util.Properties;/*** 读取属性配置文件工具类* @author 钟林森**/
public class PropertiesUtils {private static Properties properties=new Properties();static{try {//注意属性配置文件所在的路径properties.load(ClassLoader().getResourceAsStream("./properties/db.properties"));} catch (Exception e) {System.out.Message());}}//读取属性配置文件中的某个属性对应的值public static String readProperty(String property){return (String) (property);}}

      其中,db.properties配置文件的位置如下截图所示:

   其中,properties是一个包

      下面是db.properties文件的内容:(这个配置文件里面的内容在下一篇博文会用到!!!!!)

sys.path.current.url=202.192.168.1
user=root
password=123456
driver&#sql.jdbc.Driver
url=jdbc:mysql://localhost:3306/db_spring

      下面是 PropertiesUtils的单元测试类

package stUtils;import org.junit.Test;import com.steadyjack.utils.PropertiesUtils;public class PropertiesTest {@Testpublic void testReadProperty() {String url="sys.path.current.url";String urlValue&#adProperty(url);System.out.println("读取属性配置文件中的属性:  "+url+"  对应的值: "+urlValue);}}
      好了,本文介绍到这里了,下文再介绍剩下的几个工具类


本文发布于:2024-02-04 13:42:34,感谢您对本站的认可!

本文链接:https://www.4u4v.net/it/170708548156080.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:工具   配置文件   属性   日期   java
留言与评论(共有 0 条评论)
   
验证码:

Copyright ©2019-2022 Comsenz Inc.Powered by ©

网站地图1 网站地图2 网站地图3 网站地图4 网站地图5 网站地图6 网站地图7 网站地图8 网站地图9 网站地图10 网站地图11 网站地图12 网站地图13 网站地图14 网站地图15 网站地图16 网站地图17 网站地图18 网站地图19 网站地图20 网站地图21 网站地图22/a> 网站地图23