发表于: 2017-08-01 19:40:46

1 1114


今日完成:

后台Article查询接口

写了一个查询动态查询的工具类


明日计划:

看信计的项目

准备面试



收获:


sql语句里limit使用方法

要返回前几条或者中间某几行数据,使用limit

select * from table limit mn

其中m是指记录开始的index,从0开始,表示第一条记录

n是指从第m+1条开始,取n条。

select * from table limit 24

意思是取出第3条至第6条,共4条记录


公司封装好的框架真好用

查询接口

 */
@RequestMapping(value = "/a/u/article/search", method = RequestMethod.GET)
public String getarticleList(HttpServletRequest request,
                            HttpServletResponse response, ModelMap model,  String title, Integer type, Long createBy,
                            Long startAt, Long endAt, Integer status, Integer page, Integer size) throws Exception {
if (page == null || page <= 0) {
page = 1;
   }
if (size == null || size <= 0) {
size = 10;
   }
int start = (page - 1) * size;
   if (start < 0) {
start = 0;
   }
List<Article> articleList = null;
   try {
Map<String, Object> param = DynamicUtil.getArticleList(title, createBy, startAt, endAt, status, type);
       List<Long> ids = articleService.getIdsByDynamicCondition(Article.class, param, start, size);
       log.info("get ids is " + ids);
       List<Long> count = articleService.getIdsByDynamicCondition(Article.class, param, 0, Integer.MAX_VALUE);
       log.info("get count is " + count);
       articleList = articleService.getObjectsByIds(ids);
       log.info("get articleList is " + articleList);
       model.addAttribute("code", 0);
       model.addAttribute("size", size);
       model.addAttribute("total", count.size());
       model.addAttribute("articleList", articleList);

   } catch (Exception t) {
t.printStackTrace();
       log.error(t.getMessage());
       log.error("get article error");
       model.addAttribute("code", -100000);        }



return "/carrots-bangbang-admin-service/article/json/articleListJson";
}


动态sql语句拼接工具

    public static Map<String, Object> getArticleList(String title, Long createBy, Long startAt,Long endAt, Integer status, Integer type
) {
Map<String, Object> params = new HashMap<String, Object>();
       if (DataUtils.isNotNullOrEmpty(title)) {
params.put("title & like", "'%" + title + "%'");
       }
if (DataUtils.isNotNullOrEmpty(createBy)) {
params.put("create_by", "'" + createBy + "'");
       }
if (DataUtils.isNotNullOrEmpty(startAt)) {

params.put("create_at & >=",startAt);
       }
if (DataUtils.isNotNullOrEmpty(endAt)) {
params.put("ent_at & <=",endAt);
       }
if (DataUtils.isNotNullOrEmpty(status)) {
params.put("status", "'" + status + "'");
       }
if (DataUtils.isNotNullOrEmpty(type)) {
params.put("type", "'" + title + "'");
       }
params.put("@order", " create_at desc ");
       params.put("@query", " id ");
       params.put("@table", " article ");
       log.info("getArticleList sql is " + SQLUtil.convert2Sql(params, 0, 0));
       return params;
   }
}

问题:


暂无


返回列表 返回列表
评论

    分享到