Mybatis in 查詢

1.先建立一個傳參的工具類java

import java.util.HashMap;
/**
 * 
 * ClassName: DataMap 
 * @Description: 封裝Map,
 * @date 2018-04-02
 */
public class DataMap extends HashMap<String, Object> {
    private static final long serialVersionUID = 1L;
    
    public static DataMap getInstance(){
        return new DataMap();
    }
    
    public DataMap put(String key, Object value) {        
            super.put(key ,value);        
            return this;        
    }

    public Object get(Object key) {
            return super.get((String)key);
    }
}

2.mapping.xmljson

<!--獲取全部的訪客量,能夠按照時間查詢-->
    <select id="getAllUvCountByUrl"  parameterType="io.renren.common.utils.DataMap" resultType="java.lang.Integer">
        SELECT COUNT(*)num FROM (select count(*)num from `tb_brower_data` where  MonitorTaskCode in
        <foreach collection="url" index="index" item="item" open="(" separator="," close=")">
            #{item}
        </foreach>
        <if test="startDate != null and endDate != null">
            AND createTime BETWEEN #{startDate} AND #{endDate}
        </if>
        GROUP BY VisutorCode)tb
    </select>

3.service實現app

public JSONObject getAllCountByUrlNew(String url){
        List urls = activityService.getListByTaskCode(url);
        DataMap hashMap =new DataMap();
        hashMap.put("url",urls); //爲list
        hashMap.put("startDate",null);
        hashMap.put("endDate",null);
        //得到全部的訪客數據
        int listAllUv = baseMapper.getAllUvCountByUrlNew(hashMap);
JSONObject json = new JSONObject();
        json.put("allUv",listAllUv);//全部的uv
                return json;
    }
    
相關文章
相關標籤/搜索