遍历类成员并赋值

在类定义方法,方法的部分代码如下:

                //获取类所有成员列表
                Field[] fields = this.getClass().getDeclaredFields();

                for (int i = 0; i < fields.length; i++) {
                    //获取变量名
                    String fieldname = fields[i].getName();

                    //成员变量赋值
                    try {
                        //关键。。。可访问私有变量
                        fields[i].setAccessible(true);
                        //给属性设置
                        if(rs.getObject(fieldname)!=null) {
                            //获取数据集的值(rs是从数据库查询出来的ResultSet)
                            Object objvalue = rs.getObject(fieldname);

                            //日期类型需要转换
                            if( objvalue instanceof Date ){
                                if ( fieldname.equals("crdate") || fieldname.equals("editdate") ) {
                                    fields[i].set(this, new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(objvalue));
                                }else{
                                    fields[i].set(this, new SimpleDateFormat("yyyy-MM-dd").format(objvalue));
                                }
                            }else{
                                fields[i].set(this, objvalue);
                            }
                        }
                    }catch (Exception ex){
                    }

                }

  

原文地址:https://www.cnblogs.com/lpq21314/p/13304484.html