Javabean反射入门(数据库中一个表的字段用来名称,另一个表用来存储名称对应的值)

1.<s:radio id="radio"/>这个不能直接使用document.getElementById("radio");

    这时使用:        

                        var iscontain="";
                        var obj=document.getElementsByName("radio");
                       for(var i=0;i<obj.length;i++){
                              if(obj[i].checked==true){
                                         iscontain=obj[i].value;
                               }
                        }


2.<s:select id="select"/>这个标签通常会用到ajax实现联动效果,如下:

function getliandongshebeiname(xiangmubuusergroupid){
                var jiancezhongxinid=$("#jiancezhongxinid").val();
                var zigongsiid=$("#zigongsiid").val();
                var zhihuibuid=$("#zhihuibuid").val();
                var iscontain="";
                var obj=document.getElementsByName("iscontain");
                for(var i=0;i<obj.length;i++){
                    if(obj[i].checked==true){
                     iscontain=obj[i].value;
                    }
                }
                $.ajax({
                    url:"getliandongshebeiname",
                    type:"post",
                    data:{iscontain:iscontain,jiancezhongxinid:jiancezhongxinid,zigongsiid:zigongsiid,zhihuibuid:zhihuibuid,xiangmubuusergroupid:xiangmubuusergroupid},
                    dataType:"json",
                    success:function(data){
                        if(data.info=="success"){
                            var ops = data.outstr.split("|");
                            var obj = document.getElementById("shebeiname");
                            alert("success :"+obj.options.length);
                            while(obj.options.length>1) {obj.options[1] = null;};                            
                            for (var i = 0; i < ops.length-1; i++) {
                                var op = ops[i];
                                var ss = op.split(",");
                                var oOption =  new Option(ss[1], ss[0]);
                                obj.options.add(oOption);    //将节点加入选项中
                            }                                                
                        }else if(data.info=="error"){
                            var obj = document.getElementById("shebeiname");
                            alert(" error :"+obj.options.length);
                            while(obj.options.length>1) {obj.options[1] = null;};
                        }
                    }
                });
            }


     备注:while(obj.options.length>1) {obj.options[1] = null;};  ----在用户下次改变时,清空下拉列表的值

3.在大型项目中,用户保存数据会出现数据乱存储的情况。(比如在工地上,该字段是水,应该存储水的值,结果存储的其他值。)

   解决方法:

HntbhzziduancfgView hbfield = queryService.gethntcfgfield(shebeibianhao);
                                String [] ArrStr={"feimeihui4","fenliao5","fenliao6","guliao5","kuangfen3","sha1","sha2","shi1","shi2","shui1","shui2","shuini1","shuini2","waijiaji1","waijiaji2","waijiaji3","waijiaji4"};
                                List<String> sha_shijilist=new ArrayList<String>();
                                List<String> sha_lilunlist=new ArrayList<String>();
                                List<String> sjshalist=new ArrayList<String>();
                                List<String> shui_shijilist=new ArrayList<String>();
                                List<String> shui_lilunlist=new ArrayList<String>();
                                List<String> shuini_shijilist=new ArrayList<String>();
                                List<String> shuini_lilunlist=new ArrayList<String>();
                                List<String> fenmeihui_shijilist=new ArrayList<String>();
                                List<String> fenmeihui_lilunlist=new ArrayList<String>();
                                for(int i=0;i<ArrStr.length;i++){
                                    try{
                                        if(((String)hbfield.getClass().getMethod("get"+ArrStr[i].replaceFirst(ArrStr[i].substring(0,1),ArrStr[i].substring(0,1).toUpperCase())+"_shijizhi",new Class[]{}).invoke(hbfield,new Object[]{})).indexOf("砂")>-1){
                                            sha_shijilist.add(ArrStr[i]);
                                            sjshalist.add(ArrStr[i]);
                                        }
                                        if(((String)hbfield.getClass().getMethod("get"+ArrStr[i].replaceFirst(ArrStr[i].substring(0,1),ArrStr[i].substring(0,1).toUpperCase())+"_lilunzhi",new Class[]{}).invoke(hbfield,new Object[]{})).indexOf("砂")>-1){
                                            sha_lilunlist.add(ArrStr[i]);
                                        }
                                        if(((String)hbfield.getClass().getMethod("get"+ArrStr[i].replaceFirst(ArrStr[i].substring(0,1),ArrStr[i].substring(0,1).toUpperCase())+"_shijizhi",new Class[]{}).invoke(hbfield,new Object[]{})).indexOf("水")>-1 &&
                                                ((String)hbfield.getClass().getMethod("get"+ArrStr[i].replaceFirst(ArrStr[i].substring(0,1),ArrStr[i].substring(0,1).toUpperCase())+"_shijizhi",new Class[]{}).invoke(hbfield,new Object[]{})).indexOf("泥")==-1 &&
                                                ((String)hbfield.getClass().getMethod("get"+ArrStr[i].replaceFirst(ArrStr[i].substring(0,1),ArrStr[i].substring(0,1).toUpperCase())+"_shijizhi",new Class[]{}).invoke(hbfield,new Object[]{})).indexOf("减")==-1 &&
                                                ((String)hbfield.getClass().getMethod("get"+ArrStr[i].replaceFirst(ArrStr[i].substring(0,1),ArrStr[i].substring(0,1).toUpperCase())+"_shijizhi",new Class[]{}).invoke(hbfield,new Object[]{})).indexOf("剂")==-1){
                                            shui_shijilist.add(ArrStr[i]);
                                        }
                                        if(((String)hbfield.getClass().getMethod("get"+ArrStr[i].replaceFirst(ArrStr[i].substring(0,1),ArrStr[i].substring(0,1).toUpperCase())+"_lilunzhi",new Class[]{}).invoke(hbfield,new Object[]{})).indexOf("水")>-1 &&
                                                ((String)hbfield.getClass().getMethod("get"+ArrStr[i].replaceFirst(ArrStr[i].substring(0,1),ArrStr[i].substring(0,1).toUpperCase())+"_lilunzhi",new Class[]{}).invoke(hbfield,new Object[]{})).indexOf("泥")==-1 &&
                                                ((String)hbfield.getClass().getMethod("get"+ArrStr[i].replaceFirst(ArrStr[i].substring(0,1),ArrStr[i].substring(0,1).toUpperCase())+"_lilunzhi",new Class[]{}).invoke(hbfield,new Object[]{})).indexOf("减")==-1 &&
                                                ((String)hbfield.getClass().getMethod("get"+ArrStr[i].replaceFirst(ArrStr[i].substring(0,1),ArrStr[i].substring(0,1).toUpperCase())+"_lilunzhi",new Class[]{}).invoke(hbfield,new Object[]{})).indexOf("剂")==-1){
                                            shui_lilunlist.add(ArrStr[i]);
                                        }
                                        if(((String)hbfield.getClass().getMethod("get"+ArrStr[i].replaceFirst(ArrStr[i].substring(0,1),ArrStr[i].substring(0,1).toUpperCase())+"_shijizhi",new Class[]{}).invoke(hbfield,new Object[]{})).indexOf("水泥")>-1){
                                            shuini_shijilist.add(ArrStr[i]);
                                        }
                                        if(((String)hbfield.getClass().getMethod("get"+ArrStr[i].replaceFirst(ArrStr[i].substring(0,1),ArrStr[i].substring(0,1).toUpperCase())+"_lilunzhi",new Class[]{}).invoke(hbfield,new Object[]{})).indexOf("水泥")>-1){
                                            shuini_lilunlist.add(ArrStr[i]);
                                        }
                                        if(((String)hbfield.getClass().getMethod("get"+ArrStr[i].replaceFirst(ArrStr[i].substring(0,1),ArrStr[i].substring(0,1).toUpperCase())+"_shijizhi",new Class[]{}).invoke(hbfield,new Object[]{})).indexOf("煤")>-1 &&
                                                ((String)hbfield.getClass().getMethod("get"+ArrStr[i].replaceFirst(ArrStr[i].substring(0,1),ArrStr[i].substring(0,1).toUpperCase())+"_shijizhi",new Class[]{}).invoke(hbfield,new Object[]{})).indexOf("灰")>-1){
                                            fenmeihui_shijilist.add(ArrStr[i]);
                                        }
                                        if(((String)hbfield.getClass().getMethod("get"+ArrStr[i].replaceFirst(ArrStr[i].substring(0,1),ArrStr[i].substring(0,1).toUpperCase())+"_lilunzhi",new Class[]{}).invoke(hbfield,new Object[]{})).indexOf("煤")>-1 &&
                                                ((String)hbfield.getClass().getMethod("get"+ArrStr[i].replaceFirst(ArrStr[i].substring(0,1),ArrStr[i].substring(0,1).toUpperCase())+"_shijizhi",new Class[]{}).invoke(hbfield,new Object[]{})).indexOf("灰")>-1){
                                            fenmeihui_lilunlist.add(ArrStr[i]);
                                        }
                                    }catch(Exception ex){
                                        logger.info(ex);
                                    }
                                }


备注:hbfield.getClass().getMethod("get"+ArrStr[i].replaceFirst(ArrStr[i].substring(0,1),ArrStr[i].substring(0,1).toUpperCase())+"_shijizhi",new Class[]{}).invoke(hbfield,new Object[]{}),这个代码的意义在:如果得到对象hbfield.getShui_shijizhi(),


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值