自己写的java工具类(包含序列化,参数校验,判空,HashMap,分页计算)
来源:互联网 发布:苏联元帅知乎 编辑:程序博客网 时间:2024/06/06 18:37
没有其他特殊依赖,拷贝过去即可用.
package org.xx.xximport java.io.ByteArrayInputStream;import java.io.ByteArrayOutputStream;import java.io.ObjectInputStream;import java.io.ObjectOutputStream;import java.util.HashMap;public class Utils {private static Utils myUtil = null;public static final Integer EMAIL = 1;public static final Integer USERNAME = 2;public static final Integer PASSWORD = 3;public static final Integer TEL = 4;private Utils() {}/** * 单例模式,返回该类对象 * * @dagewang 2017年11月1日 */public static Utils getUtil() {if (myUtil == null) {synchronized (Utils.class) {if (myUtil == null) {myUtil = new Utils();}}}return myUtil;}/** * 参数的校验,type在本类中有常量表示 * * @dagewang 2017年11月1日 */public boolean check(Integer type, String data) {boolean result = false;if (type == EMAIL) {result = data.matches("[\\w]+@[\\w]+\\.{1}[\\w]{2,3}");} else if (type == USERNAME) {result = data.matches("[a-zA-Z]{1}+[\\w]{7,19}");} else if (type == PASSWORD) {result = data.matches("^(?:(?=.*[A-Z])(?=.*[a-z])(?=.*[0-9])).{8,22}$");} else if (type == TEL) {result = data.matches("[0-9]{11}");}return result;}/** * 参数判空,可变长度 * * @dagewang 2017年10月24日 */public boolean isNull(Object... obj) {for (int i = 0; i < obj.length; i++) {if (obj[i] == null || obj[i].equals("")) {return true;}}return false;}/** * 通过总数和每页需要多少条,计算有多少页 * * @dagewang 2017年7月31日 */public Integer getPage(Integer count, Integer pageNum) {double size = (double) count;size = size / pageNum;return size < 1 ? 1 :(int)Math.ceil(size);}/** * 序列化 * * @dagewang 2017年11月1日 */public byte[] serialize(Object object) throws Exception {ObjectOutputStream oos = null;ByteArrayOutputStream baos = null;baos = new ByteArrayOutputStream();oos = new ObjectOutputStream(baos);oos.writeObject(object);return baos.toByteArray();}/** * 反序列化 * * @throws Exception * * @dagewang 2017年11月1日 */public static Object unserialize(byte[] bytes) throws Exception {ByteArrayInputStream bais = null;bais = new ByteArrayInputStream(bytes);ObjectInputStream ois = new ObjectInputStream(bais);return ois.readObject();}/** * 构造HashMap * * @dagewang 2017年11月1日 */publicHashMap newHashMap() {return new HashMap ();}}
阅读全文
0 0
- 自己写的java工具类(包含序列化,参数校验,判空,HashMap,分页计算)
- 巧妙的...【可变数组】参数校验非空工具类
- Java校验对象是否为空的工具类
- 判空相关工具类
- 判空相关工具类
- 自己写的Java分页类
- java 中可变参数的判空方式
- 自己写的计算群论工具
- javascript的动态参数判空操作
- 自己写的分页类
- 字符串和对象判空工具类
- Android EmptyUtils-判空相关工具类
- java日期计算工具类【包含常用的日期计算方法】
- 自己写的分页
- Java中常用的判空操作
- Java String 判空的标准用法
- (原创)分享自己写的几个工具类(五)时间计算工具类
- java中的判空
- Android Render(三)7.1源码硬件加速下draw绘制流程分析
- 60-数组类模板
- jquery动画
- 深度深林
- wince系统报错异常总结
- 自己写的java工具类(包含序列化,参数校验,判空,HashMap,分页计算)
- 数据库的创建
- 在LINUX上使用OCILIB连接ORACLE数据库失败的问题
- Java Override/Overload
- ifram获取父对象或者另一个子页面对象
- thymeleaf 学习笔记
- Java 位运算(移位、位与、或、异或、非)
- GridView测量高度
- 同一个TextView如何显示不同颜色的文字、字体大小、字体样式