zoukankan      html  css  js  c++  java
  • 对象操作工具类

    public class ObjectUtils extends org.apache.commons.lang3.ObjectUtils {

    /**
    * 注解到对象复制,只复制能匹配上的方法。
    * @param annotation
    * @param object
    */
    public static void annotationToObject(Object annotation, Object object){
    if (annotation != null){
    Class<?> annotationClass = annotation.getClass();
    if (null == object) {
    return;
    }
    Class<?> objectClass = object.getClass();
    for (Method m : objectClass.getMethods()){
    if (StringUtils.startsWith(m.getName(), "set")){
    try {
    String s = StringUtils.uncapitalize(StringUtils.substring(m.getName(), 3));
    Object obj = annotationClass.getMethod(s).invoke(annotation);
    if (obj != null && !"".equals(obj.toString())){
    m.invoke(object, obj);
    }
    } catch (Exception e) {
    // 忽略所有设置失败方法
    }
    }
    }
    }
    }

    /**
    * 序列化对象
    * @param object
    * @return
    */
    public static byte[] serialize(Object object) {
    ObjectOutputStream oos = null;
    ByteArrayOutputStream baos = null;
    try {
    if (object != null){
    baos = new ByteArrayOutputStream();
    oos = new ObjectOutputStream(baos);
    oos.writeObject(object);
    return baos.toByteArray();
    }
    } catch (Exception e) {
    e.printStackTrace();
    }
    return null;
    }

    /**
    * 反序列化对象
    * @param bytes
    * @return
    */
    public static Object unserialize(byte[] bytes) {
    ByteArrayInputStream bais = null;
    try {
    if (bytes != null && bytes.length > 0){
    bais = new ByteArrayInputStream(bytes);
    ObjectInputStream ois = new ObjectInputStream(bais);
    return ois.readObject();
    }
    } catch (Exception e) {
    e.printStackTrace();
    }
    return null;
    }
    }
  • 相关阅读:
    绿色版的Linux.NET——“Jws.Mono”
    警惕!高版本VS发布时预编译导致Mono中Razor找不到视图
    用迭代实现无限级分类
    如何让我们的PHP在Jexus中跑起来
    Linux.NET实战手记—自己动手改泥鳅(下)
    umei-spider
    selenium-爬取小说
    filter() 函数
    字典,元组,列表,字符串互相转换
    Python实用黑科技——解包元素(2)
  • 原文地址:https://www.cnblogs.com/luyuefei/p/13386564.html
Copyright © 2011-2022 走看看