对前台传回的list进行分割,并放在sql语句的in中
前端数据集传回数据
var matDeptHisMonthPlanStore = Ext.data.StoreManager.lookup('matDeptHisMonthPlanStore');
matDeptHisMonthPlanStore.proxy.extraParams = {'PROCESS_STATUS_LIST_STRING' : '0,1,2,3'
};
matDeptHisMonthPlanStore.currentPage = 1;
matDeptHisMonthPlanStore.load();
控制层处理数据
String PROCESS_STATUS_LIST_STRING,
List<Integer> PROCESS_STATUS_LIST = new ArrayList<Integer>();
if (StringUtils.isNotEmpty(PROCESS_STATUS_LIST_STRING)) {
String[] split = PROCESS_STATUS_LIST_STRING.split(",");
for (int i = 0; i < split.length; i++) {
PROCESS_STATUS_LIST.add(Integer.valueOf(split[i]));
}
}
在实现层里写方法,使用SQL语句
if (PROCESS_STATUS_LIST != null && PROCESS_STATUS_LIST.size() > 0) {
sql += " and PROCESS_STATUS_ in (:PROCESS_STATUS_LIST)";
paramMap.put("PROCESS_STATUS_LIST", PROCESS_STATUS_LIST);
}
List<Object> result = new ArrayList<Object>();
result.add(sql);
result.add(paramMap);
NamedParameterJdbcTemplate namedParameterJdbcTemplate = new NamedParameterJdbcTemplate(dmJdbcTemplate);
return namedParameterJdbcTemplate.queryForList(sql, paramMap);
总结:控制层与实现层。控制层是作为前端数据与后端数据的交换,只是起转换传递作用。对具体的业务实现应放在实现层做处理。达到数据与业务的分离,各个方法作为独立的模块工作,互不干扰。对不是数据库的数据,只是做显示处理,以及保密性,可以放在控制层做处理
SQL语句中 = 比 in 的效率更高
对前台传回的list进行分割,并放在sql语句的in中的更多相关文章
- mssql字符串分割后的值,把表中不存在的插入表中
字符串分割后的值,把表中不存在的插入表中 --供大家参考 使用场景,自行思考…… --创建表tb1 Create table tb1 ( cola int, colb ) ) --插入数据 inser ...
- 使用flask+SQL语句实现通过前台收到的信息向数据库中插入事件+初级CSS+HTML拯救一下我的主页·····
1.使用flask+SQL语句实现**#@&&(懒得再扣一遍题目) 上代码: @app.route('/register', methods=['POST', 'GET']) def ...
- 列式存储(二)JFinal如何处理从前台传回来的二维数组
上一篇说到了列式存储,这一篇说它的存储问题,将每个模块的所有属性字段单独存到一张表中,新增页面时,所有的字段都去数据库请求,这样多个模块的新增功能可以共用一个jsp.由于每个模块的字段个数不一样,有的 ...
- 将前台传回的HttpServletRequest转换成HashMap
import java.util.HashMap;import java.util.Map;import java.util.Map.Entry;import java.util.Set; impor ...
- Java接收前台传回的json
var list = new Array(); var obj = {}; obj.name= "zhangsan"; obj.sex= "女";obj.ema ...
- java web 通过前台输入的数据(name-value)保存到后台 xml文件中
一:项目需求,前端有一个页面,页面中可以手动输入一些参数数据,通过点击前端的按钮,使输入的数据保存到后台生成的.xml文件中 二:我在前端使用的是easyui的propertygrid,这个能通过da ...
- java把一个list分割成多个list存入map中(实例)
这都是最近我写工具遇到的一些点, 这些点就是指我在网上没搜到答案,然后实际上我为此花费了时间的 public static void main(String[] args) { List<Str ...
- sql sever使用sql语句查询数据, 分割某字段改为多行,其它字段保持不变
如表中有A.B.C三个字段,数据如下: A B C 1,2 3 4 要求查询结果: A B C 1 3 ...
- 【翻译】HTML5开发——轻量级Web Database存储库html5sql.js
方式1: html5sql官方网址:http://html5sql.com/ 阅读之前,先看W3C关于WEB Database的一段话: Beware. This specification is n ...
随机推荐
- jQuery.extend 函数详解
JQuery的extend扩展方法: Jquery的扩展方法extend是我们在写插件的过程中常用的方法,该方法有一些重载原型,在此,我们一起去了解了解. 一.Jquery的扩展方 ...
- 新手学跨域之iframe
https://segmentfault.com/a/1190000000702539 页面嵌套iframe是比较常见的,比如QQ相关业务页面的登录框一般都是iframe的.使用ifrmae跨域要满足 ...
- 基于GPU的高分一号影像正射校正的设计与实现
一 RPC正射校正的原理 影像正射校正的方法有很多,主要包含两大类:一类是严格的几何纠正模型,另一类是近似几何纠正模型.当遥感影像的成像模型和有关参数已知时,可以根据严格的成像模型来校正图像,这种方法 ...
- [LeetCode] Construct Binary Tree from Inorder and Postorder Traversal 由中序和后序遍历建立二叉树
Given inorder and postorder traversal of a tree, construct the binary tree. Note: You may assume tha ...
- HTTP服务器(2)
导语 重定向器是特殊用途的HTTP服务器的另一个简单而有用的应用程序.它的作用就是将用户从一个WEB网站重定向到另外一个网站.下面是一个简单的例子,程序沿用上一个SingleHttpServer代码. ...
- Activity去Title的几种方式
第一种:直接加一行代码: @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInst ...
- Android开发工具: AS, Gradle, Git等
(一)史上最详细的Android Studio系列教程 你还没有使用Android Studio + Gradle么?那就有点太落伍了,下面自己原创总结了Android Studio的一系列教程,图文 ...
- 并发包的线程池第二篇--Executors的构造
上一篇讲述了ThreadPoolExecutor的执行过程,我们也能看出来一个很明显的问题:这个线程池的构造函数比较复杂,对于不十分理解其运作原理的程序员,自己构造它可能体现和想象中不一样的行为.比如 ...
- div自适应高度
div自适应高度 Div即父容器不根据内容自适应高度,我们看下面的代码: <div id="main"> <div id="content"& ...
- java学习笔记之数组