开发笔记之20140116

本文探讨了在前端开发过程中,将多条记录提交至后台插入数据库时,使用JavaScript将表格记录封装为对象列表和ID查询数据库两种方法的优缺点,并最终决定采用封装为对象列表的方法,以减少与数据库的交互次数,提高系统响应效率。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

今天在开发过程中需要将table中的多条记录提交至后台插入数据库,想到两种实现方法。


第一种是在前台利用javascript将table中的多条记录拼成一个list送给后台,后台接受到这个list后遍历并插入数据库,javascrip代码如下所示:

//submit userForm to action
function submitUserForm(){
//get all datas from userListTable and set it in the userList field which is hidden
var userList = '';
$('#examineeTbody tr').each(function(){
userList = userList+"{userNm:"+$(this).children('td:eq(1)').html()+"},";
})
//set value to hidden input field
$('#examineeList').val('['+trimComma(userList)+']');
if(confirm('<spring:message code="aps.exa.message.201"/>')){  
//submit form
fnAjaxFormSubmit(ADD_USER_TO_GROUP_URL,'saveUserToGroupCallback', 'addExamineeToGroupForm');
    }
}

虽然我在前台将一条条记录封装成对象的格式,以list的形式传给了后台,但在javascript中他还是以一个string的方式传递给后台的,因此在后台拿到的还是一个string,这样就无法把它强转为一个list,当然也无法以对象的方式去除list中的记录,这个时候就需要再一次将字符串拆开,一个个封装成对象,这个过程太繁琐,因此就想到了第二种方法。


第二种方法是只把table中的多条记录的Id传给后台,在后台代码中根据ID查询出对应记录,经过组织之后插入目标DB。从设计和效率角度考虑这种方式无形间就多了一次与数据库的交互,在数据量大的情况下,这种方式会降低系统相应效率,因此还是不建议采用此种方式。


最后经过与客户沟通后决定还是采用第一种方式,虽然麻烦一点,但是符合常规模式,而且可以减少与DB交互次数,提高相应效率。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值