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; }