APP 接口之 oracle分页查询数据 上拉查看之前的,下拉刷新数据接口

前端之家收集整理的这篇文章主要介绍了APP 接口之 oracle分页查询数据 上拉查看之前的,下拉刷新数据接口前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

1.接口协议



@H_301_55@ homeworkId
变量名 含义 类型 备注
cmd 请求指令 number 100619
dt 请求时间 number 最后一条记录或第一条记录时间,如果为0则为最新
作业ID number
pullType 获取类型 number 1为下拉刷新,2为上拉获取历史数据
reqUserType 成果展示用户类型 number
size 请求条数 number

2.接口设计的参数

  1. private int homeworkId;
  2. private int reqUserType;
  3. private long dt;
  4. private int pullType;
  5. private int size;

3.mybatis的sql

  1. <select id="queryHomeworkShowList" resultType="qtone.xxt.gz.data3.bean.homework.HomeworkShowBean">
  2. SELECT * FROM (
  3. select t.*,row_number() over (order by t.dt desc) rn from (
  4. select
  5. hs.CONTENT as asComment,hs.UPLOAD_TIME as dt,hs.id as id,hs.PATH as original,hs.THUMB_PATH as thumb,<if test="hslReqParam.reqUserType==1">
  6. xt.username as asUser,</if>
  7. <if test="hslReqParam.reqUserType==2">
  8. xf.name as asUser,</if>
  9. hs.USER_ID as userId,hs.user_type as userType
  10. FROM
  11. ${hslReqParam.area}_HOMEWORK_SHOW hs
  12. <if test="hslReqParam.reqUserType==1">
  13. left join xj_teacher xt
  14. on hs.user_id=xt.id
  15. </if>
  16. <if test="hslReqParam.reqUserType==2">
  17. left join ${hslReqParam.area}_xj_family xf
  18. on hs.user_id=xf.id
  19. </if>
  20. where
  21. hs.homework_id=#{hslReqParam.homeworkId}
  22. <if test="hslReqParam.reqUserType==2">
  23. AND hs.USER_TYPE=2
  24. </if>
  25. <if test="hslReqParam.reqUserType==1">
  26. AND hs.USER_TYPE=1
  27. </if>
  28. <if test="hslReqParam.pullType==1">
  29. <if test="dt !=null and dt!=''">
  30. <![CDATA[ AND TO_CHAR (hs.UPLOAD_TIME,'yyyy-mm-dd hh24:mi:ssxff')>#{dt} ]]>
  31. </if>
  32. </if>
  33. <if test="hslReqParam.pullType==2">
  34. <if test="dt !=null and dt!=''">
  35. <![CDATA[ AND TO_CHAR (hs.UPLOAD_TIME,'yyyy-mm-dd hh24:mi:ssxff')<#{dt} ]]>
  36. </if>
  37. </if>
  38. <![CDATA[ )t ) WHERE rn <= #{hslReqParam.size} and rn >=1 ]]>
  39. </select>
  40.  

提醒自己:这次是用的毫秒来算记录的先后. 所以先格式化请求时间

  1. String dt = DateUtil.getDateFromTimeDate(reqData.getDt(),"yyyy-MM-dd HH:mm:ss.SSS");
  1. 数据库表字段 datetime类型设计为 timeStamp
  1. UPLOAD_TIMENTIMESTAMP(8)Y上传时间

猜你在找的Oracle相关文章