mybatis查詢實現返回List<Map>型別資料操作
阿新 • • 發佈:2020-11-24
如下所示:
**只要設定resultType而不設定resultMap就可以了**: < select id = “selectByPage” parameterType = “java.util.Map” resultType=“java.util.Map” > select rs.*,rssetting.*,cp.STOCK_CODE,cp.UNAME from RS rs left join T_COMPANY cp on rs.uid = cp.uid left join RS_ROADSHOW_SETTING rssetting on rssetting.rs_id = rs.id where rs.TYPE_ID != 1 < if test = “qKeyWord != null” > and rs.title like #{rsTitle} </ if > order by rs.crt_time desc limit #{pageIndex},#{pageSize} </select>
MyBatis查詢,返回值Map或List<Map>
一、返回值Map
<select id=”selectUserMapLimitOne” resultType=”java.util.HashMap”> select id,name from user order by id desc limit 1 </select>
2、介面定義
/** * 獲取僅含一個的map(map的size=欄位個數) * @return */ Map<String,Object> selectUserMapLimitOne();
二、返回值List<Map>
1、mapper.xml
<select id=”selectUserMapList” resultType=”java.util.HashMap”> select id,name from user order by id desc limit 2 </select>
2、介面定義
/** * 獲取map list * @return */ List<Map<String,Object>> selectUserMapList();
補充知識:SpringBoot使用@Value給靜態變數注入值
最近在專案中遇到一個問題:
在給static修飾的變數做@Value注入時,發現變數值為null,在網上查了些資料,發現@Value只能給普通變數做值注入,那麼如何給靜態變數做值注入呢?
解決辦法:
1、先在類名上加@Component註解
2、然後再使用setXxxxxx(abc)方法,並在setXxxxxx(abc)上面加上@Value註解,如下:
@Value("${domain}") public void setDomain(String domain) { DomainUtil.domain = domain; }
ps:
1、如果是IDE生成的set方法,會在方法上帶上static修飾符,這樣是不行的,需要去掉static修飾符
2、如果set方法中的引數跟static變數同名,那麼不能用this來指向static變數,而需要用類名來限定
以上這篇mybatis查詢實現返回List