jquery checkBox undefined 和hibernate 联合主键的注意事项 集合转数组 数组转集合 map list 数组 判空 问题

1.在改代码关于checkBox 在初始化选中的问题 如果文档加载完毕 checkBox呈现未选中的状态,但如果用ajax异步状态 是他呈现选中的状态 这时候

如果用 alert($("#checkbox_all").attr("checked")); 就会一直报 undefined

这是因为在jquery1.6.2以后的版本做了改进 在以前也就是说如果checkbox在页面加载完毕是选中的,那么返回的永远都是checked(我的一开始就是没选中)

如果一开始没被选中,则返回的永远是undefined !

在以后便对此做了修改  alert($("#checkbox_all").prop("checked"));

如上是解决办法


2  便是hibernate 的联合主键问题

在数据库表 中 主键并不是必须 ,有时根据你的业务需求 表是没有主键

但hibernate 是根据 OID(对象标识符)来创建数据库以及维护数据库 的对应关系,OID也就对应着数据库里的表里的主键 ,这样的话就很尴尬了 ,我们数据库里并没有主键

于是我们就可以在 hibernate 使用联合主键:由于主键具有以下特性 :不为空 :不重复,不改变那么使用的时候需要注意以下事项

(1),被充当联合主键的字段在数据库表里不能为空

(2)被充当联合主键的字段最好不要重复

(3)使用起来麻烦


3 数组转list list转数组


                // 定义存放外部系统的数组
                String[] externalIdArray = externalIds.split( "," );

     如果把该数组 转换为 list

 Arrays.asList( externalIdArray )

这样就会转化为list

当在定义存放 list的时候需要特别 注意

  // 定义需要再分配的外部系统的集合
            List<String> exList = new ArrayList<String>();

  exList.addAll( Arrays.asList( externalIdArray ) );

一定要用 addAll方法 不要直接放

4.Map 判空用 isEmpty list判空 用size 数组用length

5.如果在for each 循环 里面移除元素可以会发生不确定的后果




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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值