zoukankan      html  css  js  c++  java
  • 反射 day1


    1、
    Object objval = rs.getObject(fieldName);//如果数据库值为空时的返回值java中的null
    //这个如果是oracle数值型的数据的会返回的可能类型有很多,如BigDecimal short int byte long boolean 所以如果是数值型的要加判断,然后再用对应的getInt getShort 等方法。
    System.out.println(objval.getClass());
    if (objval != null) { //判断非空,为空则不进行赋值(赋不赋值都是null就不赋值了)
    if (objval instanceof Number) {
    if (field.getType().getName().equals("int")
    \好像这行个判断要不要都一样
    || field.getType().getName().equals("java.lang.Integer")) {
    m.invoke(object, rs.getInt(fieldName));//这样就肯定返回值是intl了,下面的也一样
    } else if (field.getType().getName().equals("long")
    || field.getType().getName().equals("java.lang.Long")) {
    m.invoke(object, rs.getLong(fieldName));
    } else if (field.getType().getName().equals("double")
    || field.getType().getName().equals("java.lang.Double")) {
    m.invoke(object, rs.getDouble(fieldName));
    } else if (field.getType().getName().equals("short")
    || field.getType().getName().equals("java.lang.Short")) {
    m.invoke(object, rs.getShort(fieldName));
    } else if (field.getType().getName().equals("byte")
    || field.getType().getName().equals("java.lang.Byte")) {
    m.invoke(object, rs.getByte(fieldName));
    } else if (field.getType().getName().equals("float")
    || field.getType().getName().equals("java.lang.Float")) {
    m.invoke(object, rs.getFloat(fieldName));
    }
    } else {
    m.invoke(object, objval);
    }
    }
    }
    list.add(object);

  • 相关阅读:
    git的撤销操作
    mysql的逻辑结构
    mysql的系列大纲
    CompletableFuture的介绍
    AQS学习
    mysql中的数据格式
    将excel的数据进行sql处理
    什么是数据分析
    找圆方法的总结和比较(三种主要识别方法的比较和融合)
    一个有趣问题的分析--寻找并且增强印章
  • 原文地址:https://www.cnblogs.com/dxwen/p/10759258.html
Copyright © 2011-2022 走看看