用Java 实现文章内容上一篇下一篇功能

ITDragon博客 用Java 实现文章内容上一篇下一篇功能,逻辑和分页不一样。效果和本页面底部一样。采用的是Spring data jpa


SQL语句实现该功能
  • SQL 语句查询的是该数据的上一条和下一条
  • Spring data jpa 若是要执行原生的sql语句,需要添加nativeQuery=true
  • DAO 层代码如下


    @Query(value="SELECT * FROM xlblog WHERE id IN (SELECT CASE WHEN SIGN(id - ?1) > 0 " + "THEN MIN(id) WHEN SIGN(id - ?1) < 0 THEN MAX(id) END AS id FROM xlblog WHERE id <> ?1 " + "GROUP BY SIGN(id - ?1) ORDER BY SIGN(id - ?1)) ORDER BY id ASC",nativeQuery=true) List<Blog> fetchNearBlogsById(Long id);
  • Service 层代码如下


    public List<Blog> findIdAndTitle(Long id){ return blogDao.fetchNearBlogsById(id); }
  • Controller 层代码如下


    List<Blog> blogUrls = blogService.findIdAndTitle(Long.valueOf(blogId)); model.addAttribute("blogUrls",blogUrls);
  • 前端调用代码


    <c:forEach items="${blogUrls}" var="urls"> <a href="${ctx}/blog/detail/${urls.id}.html" class="urls-title" >${urls.title}</a><br> </c:forEach>
  • jquery 修饰代码


    var objUrlTitles = $(".markdown").find(".urls-title"); objUrlTitles.each(function(e){ if (0 == e) { $(this).prepend("<label>上一篇:</label>"); } else { $(this).prepend("<label>下一篇:</label>"); } });
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值