import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.jdbc.core.BeanPropertyRowMapper;
import org.springframework.jdbc.core.namedparam.MapSqlParameterSource;
import org.springframework.jdbc.core.namedparam.NamedParameterJdbcTemplate;
import org.springframework.stereotype.Repository;

public List<Map<String, Object>> queryMatInfo(Long customer_id, List<String> matCodes) {
try {
Map<String, Object> params = new HashMap<String, Object>();
String sql = "select mat_id, mat_code from wms_base_material where customer_id = :customer_id and mat_code in (:matCodes)";
params.put("customer_id", customer_id);
params.put("matCodes", matCodes);
List<Map<String, Object>> list = jdbcTemplate.queryForList(sql, params);
return list;
} catch (Exception e) {
log.error(e);
return new ArrayList<Map<String, Object>>();
}
} List<Map<String, Object>> whList = warehouseDao.queryWhList(header.getEx_wh_code()); Map<String, Object> map = whList.get(0); wh_id = (Long)map.get("wh_id"); public List<RivCheckL> queryByExpressOrderNo(String expressOrderNo) {
String sql = " select * from riv_check_l chl right join riv_pack_case_l pcl on chl.CHL_PCL_ID = pcl.PCL_ID"
+ " where pcl.PCL_EXPRESS_ORDER_NO = :expressOrderNo";
MapSqlParameterSource map = new MapSqlParameterSource();
map.addValue("expressOrderNo", expressOrderNo);
List<RivCheckL> result = jdbcTemplate.query(sql, map, new BeanPropertyRowMapper<RivCheckL>(RivCheckL.class));
return result;
}

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.jdbc.core.RowMapper;
import org.springframework.jdbc.core.namedparam.NamedParameterJdbcTemplate;
import org.springframework.stereotype.Service;

@Autowired
private NamedParameterJdbcTemplate jdbcTemplate;

List<QuantQueryForQMDTO> ls = jdbcTemplate.query(sql, params,
new RowMapper<QuantQueryForQMDTO>() {
@Override
public QuantQueryForQMDTO mapRow(ResultSet rs, int rowNum) throws SQLException {
QuantQueryForQMDTO dto = new QuantQueryForQMDTO();
dto.setOrgCode(rs.getString("org_code"));
dto.setOwnCode(rs.getString("own_code"));
dto.setMatCode(rs.getString("mat_code"));
return dto;
}
});

@Autowired
private NamedParameterJdbcTemplate jdbcTemplate;

public List<PcmlRecord> queryPcmlRecordLs(Integer onhId, Integer pclId, final PcmlInputUIInfoVO infoVO) {
final List<PcmlRecord> pcmlRecords = new ArrayList<PcmlRecord>();
List<Object> params = new ArrayList<Object>();
StringBuilder sb = new StringBuilder(" select pcml.pcml_id, pcml.pcml_row_no, pcml.pcml_pct_id, pcml.pcml_qty, pct.pct_code, pct.pct_name ");
sb.append(" from ");
sb.append(" riv_pack_case_material_l pcml left join riv_pack_case_type pct on pct.pct_id = pcml.pcml_pct_id ");
sb.append(" where ");
sb.append(" pcml.pcml_onh_id = ? ");
params.add(onhId);
sb.append(" and pcml.pcml_pcl_id = ? ");
params.add(pclId);
this.jdbcTemplate.getJdbcOperations().query(sb.toString(), params.toArray(), new RowCallbackHandler() { @Override
public void processRow(ResultSet rs) throws SQLException {
PcmlRecord record = infoVO.new PcmlRecord();
record.setPcmlId(SqlUtils.getIntValue(rs, "pcml_id"));
record.setPcmlPctId(SqlUtils.getIntValue(rs, "pcml_pct_id"));
record.setPcmlQty(SqlUtils.getIntValue(rs, "pcml_qty"));
record.setPcmlRowNo(SqlUtils.getIntValue(rs, "pcml_row_no"));
record.setPctCode(rs.getString("pct_code"));
record.setPctName(rs.getString("pct_name"));
pcmlRecords.add(record);
}
});
return pcmlRecords;
}

查询多列得到map与查询得到po对象的更多相关文章

  1. oracle 连接数据库并查询,返回List<Map<String, Object>> 数据

    package JDBC; import java.sql.Clob; import java.sql.Connection; import java.sql.DriverManager; impor ...

  2. SQL Server 一列或多列重复数据的查询,删除

    业务需求 最近给公司做一个小工具,把某个数据库(数据源)的数据导进另一个数据(目标数据库).要求导入目标数据库的数据不能出现重复.但情况是数据源本身就有重复的数据.所以要先清除数据源数据. 于是就把关 ...

  3. Dos.ORM Select查询 自定义列

    自定义列 .Select( p = >new{ test = p.id}) // 同sql 列名 as 新列名 如下是 自己在写代码的例子,查询,分页,where条件,排序 var where ...

  4. SQL Server 一列或多列重复数据的查询,删除(转载)

    转载来源:https://www.cnblogs.com/sunxi/p/4572332.html 业务需求 最近给公司做一个小工具,把某个数据库(数据源)的数据导进另一个数据(目标数据库).要求导入 ...

  5. 智能提示含查询多列(html+JS+handler+ HttpRemoting)二、Remoting代码

    /// <summary> /// 智能查询类型 /// </summary> public enum QueryType : byte { /// <summary&g ...

  6. Sql查询一个列对应多个列

    Sql查询一个列对应多个列 今天遇到一个问题,表table1有两个字段col1.col2两个字段.先记录下来,以后有个参考. 现在需要查询出的数据满足如下要求: 1.col1重复.col2重复的数据只 ...

  7. ibatis 取消查询动态列的缓存

    ibatis在查询结果列不确定(或是动态变化)的情况下,会因为列缓存的原因导致变化后的列数据查不出来 解决方法是: select标签有个属性remapResults,该属性默认值为false,设置成r ...

  8. 【java】itoo项目实战之大数据查询之使用 new map 优化hibernate之级联查询

    在我的上一篇博客<[java]itoo项目实战之hibernate 懒载入优化性能>中,我曾提到过学生数据有2万条,查询数据十分的慢,这是让人非常受不了的事情.看着页面进度条一直转着圈圈, ...

  9. SQL查询结果列拼接成逗号分隔的字符串:group_concat

    转自:SQL查询结果列拼接成逗号分隔的字符串 背景:做SQL查询时会经常需要,把查询的结果拼接成一个字符串. 解决方法: 通过 group_concat 函数 拼接的结果很长,导致拼接结果显示不全,可 ...

随机推荐

  1. 修改Win10默认窗口背景色为护眼色的方法

    按Windows键+R,打开“运行”对话框,输入regedit: 修改[HKEY_CURRENT_USER\Control Panel\Colors]下Windows键值为 199 237 204, ...

  2. 解决swfupload改变display属性后flash重新加载的问题(chome,safari内核的所有浏览器)

    最近在做的项目中有要用到上传控件,所有就用到了swfupload flash上传控件 因为在项目中要使用到Tab控件,tab控件通过改变display属性来控制tab页的显 示与隐藏.当swfuplo ...

  3. bzoj2751 容易题

    传送门 题目 为了使得大家高兴,小Q特意出个自认为的简单题(easy)来满足大家,这道简单题是描述如下: 有一个数列A已知对于所有的A[i]都是1~n的自然数,并且知道对于一些A[i]不能取哪些值,我 ...

  4. Luogu 4216 [SCOI2015]情报传递

    BZOJ 4448. 写起来很愉悦的题. 按照时间可持久化线段树,修改就在原来的地方加$1$即可,查询就直接询问$root_1 - root_{now - c - 1}$中相应的个数. 主席树维护树链 ...

  5. MySQL介绍与安装

    mysql介绍 #mysql就是一个基于socket编写的C/S架构的软件 #客户端软件 mysql自带:如mysql命令,mysqldump命令等 python模块:如pymysql 数据库管理软件 ...

  6. HTML5应用程序缓存Application Cache详解.RP

    什么是Application Cache HTML5引入了应用程序缓存技术,意味着web应用可进行缓存,并在没有网络的情况下使用,通过创建cache manifest文件,可以轻松的创建离线应用. A ...

  7. 数据库(学习整理)----6--Oracle如何快速备份和多次备份数表数据

    1.说明:  这里假设一种应用场景! 假设,银行系统中有大量的数据需要及时备份,如何才能快速高效呢! 条件需求: (1).不能设置同步锁(设置的会影响银行正常业务进行!使得银行系统处于维护状态,这是不 ...

  8. Fiddler系统监控参数解读

    转自:https://blog.csdn.net/txj236/article/details/38872855 在对系统监控的过程中,发现ClientConnected和ClientBeginReq ...

  9. BCP导入导出

  10. 验证视图状态MAC失败的解决办法

    在网上搜寻了很久看了很多关于MAC验证视图状态失败的解决方法.大部分人都说是在页里或web.config里加 EnableEventValidation="false" Enabl ...