mybayis 之resultType="map"】的更多相关文章

List<Map> publishInfos = memberShareMapper.shareToCouponCountGroupByPublishId(memberShare.getActivityId()); <select id="shareToCouponCountGroupByPublishId" parameterType="java.lang.Long" resultType="map"> select c…
<select id="getAllGoodsForSouJiaYi" resultType="Map" parameterType="String"> select t.goods_no, t.goods_name, t.market_price, t.ec_price, t.package_standard, p.drug_prescription_type, p.product_id, t.goods_id, p.drug_tr…
Map map = new HashMap(); map.put("productTypeID", productTypeId); List<HashMap> productAttributeList = productsListService.getAttrByTypeID(map); public List<HashMap> getAttrByTypeID(Map map) { return commonDao.queryForList("Prod…
mybatis.xml 配置文件设置 <configuration> <settings> <!-- 在null时也调用 setter,适应于返回Map,3.2版本以上可用 --> <setting name="callSettersOnNulls" value="true"/> </settings> </configuration> spring boot 设置 #key为null时也会映射…
mybatis学习(七)——resultType解析 resultType是sql映射文件中定义返回值类型,返回值有基本类型,对象类型,List类型,Map类型等.现总结一下再解释 总结: resultType: 1.基本类型  :resultType=基本类型 2.List类型:   resultType=List中元素的类型 3.Map类型    单条记录:resultType =map 多条记录:resultType =Map中value的类型 1.对象类型 对于对象类型resultTyp…
if (uIds.size() > 0) { map.put("uIds", uIds); } else { map.put("uIds", null); } <select id="queryCourseEvaluationPeopleByUIds" resultType="map" resultMap="BaseResultMap"> select * from t_se_course…
1. 问题描述 在使用MyBatis,我们经常会遇到这种情况:SELECT两个字段,需要返回一个Map,其中第一个字段作为key,第二个字段作为value.MyBatis的MapKey虽然很实用,但并不能解决这种场景.这里,就介绍一种使用拦截器来解决这个问题的方案. 2. 解决方案 源码详见:spring-mybatis-test 2.1 注解 package com.adu.spring_test.mybatis.annotations; import java.lang.annotation…
用mybaits 写一个关联查询 查询商品表关联商品规格表,并查询规格表中的数量.价格等,为了sql重用性,利用 association 节点 查询 结果并赋值报错 商品表的mapper文件为GooodsMapper.xml 规格表的mapper 文件为GoodsSpecificationsMapper.xml java.lang.IllegalArgumentException: Mapped Statements collection does not contain value for m…
由于mapper.xml中resultMap = "map"  改为 resultType="map"即可,折腾了一下午…
在JPA 2.0中我们可以使用entityManager.createNativeQuery()来执行原生的SQL语句.但当我们查询结果没有对应实体类时,需使用entityManager.createNativeQuery(String sqlString)来执行查询时,query.getResultList()返回的是一个List<Object[]>.也就是说每行的数据被作为一个对象数组返回. 常见的用法是这样的: public void testNativeQuery(){       Q…
1.查询补充 当你查询一条记录并且是简单查询时,情况相对简单,可以参考以下的例子: public Employee getEmpById(Integer id); 对应的xml文件中: <select id="getEmpById" resultType="com.mybatis.learn.bean.Employee"> select id, last_name lastName, gender, email from tbl_employee whe…
(1)接口中编写方法 //单行 public Map<String, Object> getEmpReturnMap(Integer id); //多行 @MapKey("id") public Map<Integer, Emp> getEmpReturnMaps(String lastName); (2)编写Mapper文件 MyBatis框架为Map起别名叫map <!-- public Map<String, Object> getEmp…
一.入参为List的写法: <select id="queryParamList" resultType="map" parameterType="java.util.List"> select id from static where id in <foreach collection="list" index="index" item="item" open=&qu…
<resultMap id="ticketInfosResultMap" type="Map"> <!--result要是默认用列名的话完全不必要配,省老事了 <result property="ID_" column="ID_"/> <result property="TICKET_NUMBER_" column="TICKET_NUMBER_"/&…
<select id="query" resultType="map"> select * from ${tbName} <where> <foreach item="item" index="index" collection="queryList"> ${item.logic} ${item.field} ${item.operator} <choose>…
.单个参数 mybatis不会做特殊处理. #{参数名/任意名}:取出参数值. .多个参数 mybatis会做特殊处理. 多个参数会被封装成 一个map. key:param1...paramN,或者参数的索引也可以. value:传入的参数值. #{}就是从map中获取指定的key的值: 多个参数传递的时候要使用命名参数的形式: .命名参数:明确指定封装参数时map的key:@Param("id") 多个参数会被封装成 一个map, key:使用@Param注解指定的值 value:…
前言:最近在做一个通用查询单表的组件,所以 sql 的写法就是 select *,然后 resultType="map" .如果数据库中的表里有字段类型为 Long 等类型时,mybatis 在执行 sql 时会报错,如果表中有 Blob.Clob 类型在转 json 是也会报错,而且我这里也需要将这几种类型都转为 String 类型到前端. long 类型 sql 报错: Blob/Clob 转 json 报错: 解决方案: 自定义 typeHandle 来统一处理数据库这些特殊的字…
前言:最近在做一个通用查询单表的组件,所以 sql 的写法就是 select *,然后 resultType="map" ,然后使用 jackson @ResponseBody 返回前端报错. 转载请注明出处:https://www.cnblogs.com/yuxiaole/p/9708485.html 后台报错: 26-Sep-2018 22:18:08.209 WARNING [http-apr-8080-exec-8] org.springframework.web.servle…
通过MapKey指定map的key值 @MapKey("id") Map<Long, UserInfo> getUserInfoMap(); @MapKey("id") Map<Long, Map<String,Object>> getUserValueMap(); map的value为java类 <resultMap id="UserResultMap" type="com.xixicat.d…
Map<String,Object> map = new HashMap<String, Object>(); Map<String,String> agentMap = new HashMap<String, String>(); String agentAmt = "; agentMap.put("agentAmt",agentAmt); agentMap.put("); Map [] agentInfo = {a…
resultType是sql映射文件中定义返回值类型,返回值有基本类型,对象类型,List类型,Map类型等.现总结一下再解释 总结: resultType: 1.基本类型  :resultType=基本类型 2.List类型:   resultType=List中元素的类型 3.Map类型    单条记录:resultType =map 多条记录:resultType =Map中value的类型 1.对象类型 对于对象类型resultType直接写对象的全类名就可以了 实例: hotelMap…
一.返回一般数据类型 比如要根据 id 属性获得数据库中的某个字段值. mapper 接口: // 根据 id 获得数据库中的 username 字段的值 String getEmpNameById(Integer id); SQL 映射文件: <!-- 指定 resultType 返回值类型时 String 类型的, string 在这里是一个别名,代表的是 java.lang.String 对于引用数据类型,都是将大写字母转小写,比如 HashMap 对应的别名是 'hashmap' 基本数…
1.xml中配置: <!-- 根据条件查询满足条件的ID集合开始 --> <select id="getQuestionsIdsForExamPaper" resultType="java.lang.String" parameterType="hashmap"> select questionId from questions <where> <include refid="query_que…
引用: http://blog.csdn.net/yingxiake/article/details/51016234 http://blog.csdn.net/yingxiake/article/details/51016234 http://www.cnblogs.com/zj0208/p/6008627.html Query的使用: 在JPA 2.0 中我们可以使用entityManager.createNativeQuery()来执行原生的SQL语句. 但当我们查询结果没有对应实体类时,…
转http://blog.csdn.net/lulidaitian/article/details/70941769 一.查询sql添加每个字段的判断空 IFNULL(rate,'') as rate 二.ResultType利用实体返回,不用map 三.springMVC+mybatis查询数据,返回resultType=”map”时,如果数据为空的字段,则该字段省略不显示,可以通过添加配置文件,规定查询数据为空是则返回null. <?xml version="1.0" enc…
笔记要点出错分析与总结工程组织 1.定义接口 public interface EmployeeMapper { //多条记录封装到一个map中: Map<Integer,Employee>,键是这条记录的主键,值时记录封装后的JavaBean @MapKey("id") //告诉Mybatis 封装Map的时候,使用哪个属性作为map的key,当然要对应你的下一行的Integer public Map<Integer,Employee> getEmpsByLa…
在JPA 2.0 中我们可以使用entityManager.createNativeQuery()来执行原生的SQL语句. 但当我们查询结果没有对应实体类时,query.getResultList()返回的是一个List<Object[]>.也就是说每行的数据被作为一个对象数组返回. 常见的用法是这样的: public void testNativeQuery(){ Query query = entityManager.createNativeQuery("select id, n…
在使用Mybatis开发时,Mybatis返回的结果集就是个map,当返回map时只需要做好SQL映射就好了,减少了代码量,简单便捷,缺点是不太方便维护,但是写大量的vo类去返回也挺累的,这个看你个人以及团队取舍了 有时候我们需要按SQL查询时字段的顺序返回查询结果,此时通过指定 resultType="map"的返回值是没有顺序的,如果需要有序返回SQL查询时的字段只需要将resultType改成:java.util.LinkedHashMap 就可以了,即:resultType=&…
查询返回值是map类型的一条数据 1 首先在接口中写方法 public interface EmployeeMapper { //返回一条记录的map:key就是列名,值就是对应的值 public Map<String, Object> getEmpByIdReturnMap(Integer id); } 2 在映射文件xml配置方法 <!--public Map<String, Object> getEmpByIdReturnMap(Integer id); -->…
resultType和resultMap: 1.resultType: 一.返回一般数据类型比如要根据 id 属性获得数据库中的某个字段值. mapper (dao)接口: // 根据 id 获得数据库中的 username 字段的值     String getStuNameById(Integer id); Mapper.xml 映射文件: <!-- 指定 resultType 返回值类型时 String 类型的,string 在这里是一个别名,代表的是 java.lang.String 对…