js调用servletcontext数据 遍历list

本文探讨了前后端数据交互的优化方案,特别是针对大量用户场景下如何减少数据库交互次数,提出了利用缓存技术和多种前端调用方式来提高系统效率的方法。

最近项目需求:查询数据库数据生成list,传给web前台与前台数据校验,前台code是否在list里。

 

1. 为什么必须返回list而不能用json数组形式,在js中直接解析哪?(日老项目都是这么用的,经理说也要这么用)

 

2. 设计思路:用户比较大为了减少数据库的交互,采用缓存形式。并在js中调用缓存,遍历list。

1> 在服务器启动时加载servletcontext,查询数据库将list放入context缓存。

2> 在js中直接用jstl标签或者el表达式调用list(List是java集合对象,js内置对象中并没有List对象

3> 或者通过ajax、dwr框架调用缓存,遍历操作在服务端处理,返回flag结果标识。

 

3. 在js中调用el表达式的方式:var  o= "${requestScope.name}";需要添加双引号。

 

4. 下面将js中用jstl标签方式遍历list

 

function  test(){
<c:forEach items="${applicationScope.area_config_tbl}" var="dpList">
	if(dptCde=="${dpList.selectText}"){
		return true;
	}
</c:forEach>
}

 

5. ajax方式与其他ajax方法一样,取得servletcontext.getattribute("name")得到list,在服务端遍历。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值