Utils--Net,Date,Numbers

这篇博客介绍了Utils类库的三个模块:NetUtils用于获取本机IP地址;DateUtils专注于日期处理;Numbers.java提供数值相关的工具方法。还提及了ValidatorUtil进行正则表达式校验,尤其是身份证校验的复杂性。
摘要由CSDN通过智能技术生成

一:NetUtils–主要用代码来获取本机Ip地址

public class NetUtils{
	private static Logger logger =  LoggerFactory.getLogger(NetUtils.class);
	//获取本机IP地址
	public static List<String> getLocalIpAddr(){
	List<String> ipList = new LinkedList<>();
	try{
	//1获取网络接口们
	Enumeration<NetworkInterface> interfaces = NetWorkInterface.getNetworkInterfaces();
		while(interfaces.hasMoreElements()){
		NetworkInterface ni = interfaces.nextElement();
			//1:得到 Inet 地址
		 Enumeration<InetAddress>  ipAddrEnum = ni.getInetAddresses();
		 	while( ipAddrEnum.hasMoreElements() ){ 
		 	 InetAddress addr = ipAddrEnum.nextElement();
		 	 if(addr.isLoopbackAddress() == true ){ continue;}
		 	 String ip = addr.getHostAddress();//得到ip
		 	 if(ip.indexof(":") != -1){ continue;} //为了跳过IPv6 addr
		 	 ipList.add(ip);
		 	}
		}
		//最后对ip列表进行排序
		Collections.sort(ipList);
}catch(Exception e ){throw new RunTimeException("Failed to get local ip list");}
	return ipList;
}
//main方法测试
public static void main(String args[]){
List<String> addrSet = getLocalIpAddr();
for(String  ip : addrSet){ System.out.println("Local Ip:"+ip);}
}
}

二:DateUtils,日期处理类

public class DateUtils extends org.apache.commons.lang.time.DateUtils{
 private static List<String> patterns = new ArrayList<>();
	//静态代码块(随类加载而加载,并且只执行一次)
	static  {
		patterns .add("M/d/yyyy HH:mm:ss");
		patterns .add("M/d/yyyy");
		
		patterns .add("yyyy-MM-dd HH:mm:ss");//最常用吧
		patterns .add("yyyy-MM-dd HH:mm");
		patterns .add("yyyy-MM-dd");
		patterns .add("yyyy-MM");

		patterns .add("yyyy/MM/dd HH:mm:ss");
		patterns .add("yyyy/MM/dd HH:mm");
		patterns .add("yyyy/MM/dd HH:mm");
		patterns .add("yyyy/MM/dd");
		patterns .add("yyyy/MM");

		patterns .add("yyyyMMdd HH:mm:ss");
		patterns .add("yyyyMMdd HH:mm");
		patterns .add("yyyyMMddHHmmss"); //有时间会显示这种?、
		patterns .add("yyyyMMddHHmm");
		patterns .add("yyyyMMdd");
		patterns .add("yyyyMM");
		patterns .add("yyyy");
	}
	//下面2行代码要放在静态代码块下面, 否则拿不到patterns
	//静态代码块,静态变量按声明顺序初始化
	public static Date MIN_DATE=toDate("1971");
	public static Date MAX_DATE=toDate("3000");
	
	//1:String类型日期转换为Date类型
	(一般前端穿的日期是String类型,保存数据库要转换Date)
	public static final Date  toDate(String str){
		Iterator<String> it = patterns.iterator();
	
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值