精华内容
下载资源
问答
  • 直接上代码: type User struct{ Username string `json:"Username"` Socre float`json:"Socre...//获取结构体中字段的名称 func GetFieldName(columnName string, info User) float64 { var val float64...

    直接上代码:

     type User struct{

        Username   string `json:"Username"`

    
     

        Socre  float  `json:"Socre"`

    }

    //获取结构体中字段的名称
    func GetFieldName(columnName string, info User) float64 {
    	var val float64
    	t := reflect.TypeOf(info)
    	if t.Kind() == reflect.Ptr {
    		t = t.Elem()
    	}
    	if t.Kind() != reflect.Struct {
    		fmt.Println("Check type error not Struct")
    		return 0
    	}
    	fieldNum := t.NumField()
    	for i := 0; i < fieldNum; i++ {
    		if strings.ToUpper(t.Field(i).Name) == strings.ToUpper(columnName) {
    			v := reflect.ValueOf(info)
    			val := v.FieldByName(t.Field(i).Name).Float()
    			return val
    		}
    	}
    	return val
    }
    

    使用:

    GetFieldName("score",userinfo)

    展开全文
  • 获取指定字段 需求: 用户设置要现实的字段,比如用户选择要显示的字段是:姓名,性别,年龄这三个字段,其余字段就不显示 查询数据库获得的实体类里面包含了用户需要显示的字段,如何通过用户选择的字段去匹配获取相...

    一.获取指定字段的值

    • 需求:
    • 用户设置要显示的字段,比如用户选择要显示的字段是:姓名,性别,年龄这三个字段,其余字段就不显示
    • 查询数据库获得的实体类里面包含了用户需要显示的字段,如何通过用户选择的字段去匹配获取相对应的值?
    @Data
    public class Student {
    
        private String name ;
    
        private int age ;
    }
    
    public class Test {
    
        static Class clazz1= Student.class;
    
        public static void main(String[] args) throws IllegalAccessException, NoSuchFieldException, NoSuchMethodException, InvocationTargetException {
    
            Student student=new Student();
            student.setName("张三");
            student.setAge(20);
    
            //方式1
            String fieldName="name";
            //通过字符串的变化拼接处getName,即获取name的get方法
            String	methodName="get"+
                    fieldName.substring(0,1).toUpperCase()+fieldName.substring(1);
            Method method = clazz1.getMethod(methodName);
            Object object = method.invoke(student);
            System.out.println(object.toString());//输出:张三
    
            //方式2
    
            //假设选择要现实的字段是name和age两个,或者多个以上
            String[] strArr = new String[]{"name","age"};
            Map resultMap = new HashMap();
            for (String s : strArr) {
                Field field = clazz1.getDeclaredField(s);//获取私有字段
                field.setAccessible(true);//设置权限
                Object object2 = field.get(student);//该参数为想要获取值得对象
    
                System.out.println(object2.toString());
                resultMap.put(s,object2.toString());
            }
            System.out.println(resultMap);
    
            //map转实体类
            Student student2=new Student();
            student2 = JSON.parseObject(JSON.toJSONString(resultMap), Student.class);
    
            System.out.println(student2);
        }
    }
    

    测试输出
    在这里插入图片描述

    二.设置字段的值

    //设置字段的值
            //方式一
            Field field = clazz1.getDeclaredField("name");
            Object object3=clazz1.newInstance();
            field.setAccessible(true);
            field.set(object3,"王五");
            Student student3=(Student) object3;
            System.out.println(student3.getName());
            //方式二
    
            Student student4=new Student();
            String fieldName2="name";
            String methodName2="set"+fieldName2.substring(0,1).toUpperCase()+
                    fieldName.substring(1);
            Method method2 = clazz1.getMethod(methodName2,String.class);
            method2.invoke(student4, "李四");
            System.out.println(student4.getName());
    
    展开全文
  • 微信小程序云开发where查询语句字段名和字段值都可以是变量想要实现的功能遇到的问题js代码 想要实现的功能 界面代码 // An highlighted block <view class="team_button"> <view bindtap="team_add" ...

    微信小程序云开发where查询语句字段名和字段值都可以是变量

    想要实现的功能

    显示样子
    界面代码

    // An highlighted block
    <view class="team_button">
      <view bindtap="team_add" class="button_a">添加队员</view>
      <view bindtap="team_search" class="button_a">查找队员</view>
      <view class="team_search">
        <input type="text" placeholder="请输入姓名或学号" bindinput="get_search"/>
      </view>
    </view>
    

    输入字符或数字进行查询小程序云数据库,展示内容

    遇到的问题

    拟采取对调用全局函数Number() 对输入框内容进行强制转换成数字型,如果可以转化成功,就对stu_id(学号)字段进行查询,转化不成功就对name(姓名)字段进行查询

    遇到问题

    let search_thing1=Number(that.data.search_thing)
        if(!search_thing1){
          search='name'
        }else{
            search='stu_id'
        }
    db.collection('team').where({
          //name:'宋庆'
          // search:that.data.search_thing
          [search] : that.data.search_thing
        })
        .get()
    

    首先查询name:'宋庆’是可以查询到的,但是查询search:'宋庆’就是查不到。
    解决
    研究半天发现,查询字段内容可以是变量和字符串,但是查询字段如果为变量时需要加上[],对[search] : that.data.search_thing查询就成功了

    js代码

    team_search(e){
        let that=this
        let search= ""
        let search_thing1=Number(that.data.search_thing)
        if(!search_thing1){
          search='name'
        }else{
            search='stu_id'
        }
        console.log(search,that.data.search_thing) //输出语句
        db.collection('team').where({
          // name:'宋庆'
          // search:that.data.search_thing
          [search] : that.data.search_thing
        })
        .get().then(res=>{
          wx.showToast({
            title: '查找成功',
            duration:1000,
          })
          console.log(res.data)
           that.setData({
             team_list:res.data
           })
        }).catch(res=>{
            wx.showToast({
              title: '查找失败',
              duration:1000,
             })
          })
      },
    
    展开全文
  • 直接上Demo: package aaa; import java.lang.reflect.Field; public class test { public static void main(String[] args) throws Exception{ ... //获取class对象a中声明的所有字段 Field[] field

    直接上Demo:

    package aaa;
    
    import java.lang.reflect.Field;
    
    public class test {
    	public static void main(String[] args) throws Exception{
    		aa a = new aa(11,"小明");
    		//获取class对象a中声明的所有字段
    		Field[] field = a.getClass().getDeclaredFields();
    		for(int i=0;i<field.length;i++){
    			//设置是否允许访问,不是修改原来的访问权限修饰词。
    			field[i].setAccessible(true);
    			//返回输出指定对象a上此 Field表示的字段名和字段值
    			System.out.println(field[i].getName()+":"+field[i].get(a));
    		}
    	}
    	
    	public static class aa{
    		private int id;
    		private String name;
    		public aa(){
    			
    		}
    		public aa(int id,String name){
    			this.id = id;
    			this.name = name;
    		}
    		
    		public String getName() {
    			return name;
    		}
    		public void setName(String name) {
    			this.name = name;
    		}
    		public int getId() {
    			return id;
    		}
    		public void setId(int id) {
    			this.id = id;
    		}
    	}
    }
    


    展开全文
  • 通过user_tab_columns 查出所有的表名,再遍历每个表的每个字段,看字段值是否等于要查的值。 declare v_sql varchar2(1000); data_count number; begin for cur_table in (select distinct table_name from ...
  • DROP TABLE if EXISTS temp; CREATE TABLE temp(tablename VARCHAR(255),LieName VARCHAR(255)); delimiter $$ DROP procedure IF EXISTS getDataByDbName $$ CREATE procedure getDataByDbName(in dbName VARCHAR...
  • SET @STMT =CONCAT("SELECT COUNT(*) FROM ",dbName," WHERE `",ziduan,"`='你的字段值' INTO @num;"); PREPARE STMT FROM @STMT; EXECUTE STMT; IF(@num>0) THEN INSERT INTO temp VALUES (dbName); END IF; end$$...
  • # 列转行 表有字段a,b,c,d;要求 写一条sql语句可以根据a=1查出的效果: a_1 b_2 c_2 d_4 ![图片说明](https://img-ask.csdn.net/upload/201911/14/1573719981_394391.jpg)
  • (1)首先查询表结构 查询语句:PRAGMA TABLE_INFO + ‘表名’ 通过上述可以查询到 表结构如下...从上图表结构 可以得出我们的 字段名、字段类型 (2)根据Cursor 遍历获取name 、type的 ,由此可以获取到字段类型 ...
  • Session session = null; Connection conn = null; Statement statement = null; try { session = sessionFactory.openSession(); conn = session.connection();... statement = conn.createSta
  • 我想实现一个存储过程,通过传入不同的表名,让他自动解析有多少个字段,然后根据每个字段的类型,分别插入不同的随机 其中我的随机有一个函数能做到(根据传入不用的数据类型,返回不同的,包括date字符型...
  • 数据库将表的字段值查询为字段名

    千次阅读 2019-06-06 00:44:53
    现有两张表,成绩表学籍表 成绩表:stuScore 学号 科目 成绩 是 是 1 语文 65 1 数学 83 2 语文 75 2 数学 72 学籍表:info 学号 ...
  • 由于没分清mybatis中的$#的区别,在处理数据上折腾了许久。案例如下:我要通过在实体MisWorkflowCommon中取值,在mybatis对应的映射文件的SQL中获取到对应的,从而进行update处理,修改后的部分mybatis文件如下...
  • create_ip=0:0:0:0:0:0:0:1, state=1, others=null] 但是我们实际上需要输出的是每个实体字段中的属性,一般的嵌套for循环是无法满足需要的。 我们实际需要输出的如下: Ssm_adminModel [id=34, admin_name=admin...
  • FtDoc ftDoc = new FtDoc();... //获取实体类 返回的是一个数组 数组的数据就是实体类中的字段 Field[] fields = ftDoc.getClass().getDeclaredFields(); for(int i=0,len = fields.length;i<len;i+...
  • 在单元测试时,通过反射获取对象的属性。 ToString 1privatestaticstringOutMessage(objectlab)2{3Typet=lab.GetType();4StringBuildersb=newStringBuilder();5...
  • typ.GetType().GetProperty("BPlate").GetValue(typ, null).ToString(); spa1.GetType().GetProperty(KeyString).SetValue(spa1, val, null); 返回结果是:SA-240 304 转载于:...
  • 1) [url]http://blog.csdn.net/wyzxg/article/details/44236259[/url] 重要,区分大小写敏感的概念 ... 在oracle中一般情况下不区分大小写。有时候我们在使用oracle不注意大小写的问题,表名和字段名不加...
  • PHP mysqli遍历表字段名和值

    千次阅读 2015-07-13 10:15:30
    我写过一篇《数据类型JSON格式》,探讨它的设计思想。今天,我想总结一下PHP语言对它的支持,这是开发互联网应用程序(特别是编写API)必须了解的知识。 从5.2版本开始,PHP原生提供json_encode()json_decode()...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 4,363
精华内容 1,745
关键字:

字段值和字段名