前端数据集传回数据

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中的更多相关文章

  1. mssql字符串分割后的值,把表中不存在的插入表中

    字符串分割后的值,把表中不存在的插入表中 --供大家参考 使用场景,自行思考…… --创建表tb1 Create table tb1 ( cola int, colb ) ) --插入数据 inser ...

  2. 使用flask+SQL语句实现通过前台收到的信息向数据库中插入事件+初级CSS+HTML拯救一下我的主页·····

    1.使用flask+SQL语句实现**#@&&(懒得再扣一遍题目) 上代码: @app.route('/register', methods=['POST', 'GET']) def ...

  3. 列式存储(二)JFinal如何处理从前台传回来的二维数组

    上一篇说到了列式存储,这一篇说它的存储问题,将每个模块的所有属性字段单独存到一张表中,新增页面时,所有的字段都去数据库请求,这样多个模块的新增功能可以共用一个jsp.由于每个模块的字段个数不一样,有的 ...

  4. 将前台传回的HttpServletRequest转换成HashMap

    import java.util.HashMap;import java.util.Map;import java.util.Map.Entry;import java.util.Set; impor ...

  5. Java接收前台传回的json

    var list = new Array(); var obj = {}; obj.name= "zhangsan"; obj.sex= "女";obj.ema ...

  6. java web 通过前台输入的数据(name-value)保存到后台 xml文件中

    一:项目需求,前端有一个页面,页面中可以手动输入一些参数数据,通过点击前端的按钮,使输入的数据保存到后台生成的.xml文件中 二:我在前端使用的是easyui的propertygrid,这个能通过da ...

  7. java把一个list分割成多个list存入map中(实例)

    这都是最近我写工具遇到的一些点, 这些点就是指我在网上没搜到答案,然后实际上我为此花费了时间的 public static void main(String[] args) { List<Str ...

  8. sql sever使用sql语句查询数据, 分割某字段改为多行,其它字段保持不变

    如表中有A.B.C三个字段,数据如下: A         B       C 1,2      3       4 要求查询结果: A         B       C 1         3  ...

  9. 【翻译】HTML5开发——轻量级Web Database存储库html5sql.js

    方式1: html5sql官方网址:http://html5sql.com/ 阅读之前,先看W3C关于WEB Database的一段话: Beware. This specification is n ...

随机推荐

  1. Vue.js的入门

    介绍 vue.js 是一个客户端js库,可以用来开发单页应用.为了一个项目的选型,我前前后后的看了angular.react.vuejs ,对前两者是佩服,对后者是爱.因为它简洁干净利索,并且还有高大 ...

  2. [LeetCode] Tenth Line 第十行

    How would you print just the 10th line of a file? For example, assume that file.txt has the followin ...

  3. [LeetCode] Reverse Words in a String 翻转字符串中的单词

    Given an input string, reverse the string word by word. For example, Given s = "the sky is blue ...

  4. visual studio for mac的安装初体验

    微软2016 Connect 大会发布了visuo studio for mac的pre版本,由于工作原因,现在工作环境是mac,虽然开发现在是在用python,但一直关注着.net的发展,于是自己很 ...

  5. IEEE 802.11p (WAVE,Wireless Access in the Vehicular Environment)

    IEEE 802.11p(又称WAVE,Wireless Access in the Vehicular Environment)是一个由IEEE 802.11标准扩充的通讯协定.这个通讯协定主要用在 ...

  6. Html-button和input的区别

    一.定义和用法 <button> 标签定义的是一个按钮 1.在 <button> 元素内部,您可以放置内容,比如文本或图像.这是该元素与使用 <input> 元素创 ...

  7. Js数组

    参考:http://www.w3school.com.cn/jsref/jsref_obj_array.asp 一.数组定义 1.  var arr= [1,2,3]; 2.  var arr= ne ...

  8. 修改hosts文件在本地使域名解析到指定IP

    # Additionally, comments (such as these) may be inserted on individual  # lines or following the mac ...

  9. windows下安装kibana出 "EPERM: operation not permitted

    D:\kibana-\bin>kibana-plugin install file:///x-pack-5.0.0.zip Attempting to transfer from file:// ...

  10. CodeForces 24D Broken Robot

    题意:n*m的棋盘,一个机器人在(i,j)处,每次等概率地停在原地,向左移动一格,向右移动一格,向下移动一格(不能移出棋盘).求走到最后一行所需期望步数.n<=1000,m<=1000 一 ...