Java中如何实现jpa外连接查询join
发表于:2025-11-15 作者:千家信息网编辑
千家信息网最后更新 2025年11月15日,小编给大家分享一下Java中如何实现jpa外连接查询join,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!1、IndexTagController.java@GetMapping("
千家信息网最后更新 2025年11月15日Java中如何实现jpa外连接查询join
小编给大家分享一下Java中如何实现jpa外连接查询join,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!
1、IndexTagController.java
@GetMapping("/tags/{id}") public String types(@PageableDefault(size = 3,sort = {"updateTime"},direction = Sort.Direction.DESC)Pageable pageable, @PathVariable long id, Model model, HttpSession session){ //找到所有的标签,并且按照标签新闻量排序 List tags = tagService.listTagTop(50); if(id == -1){ //得到最大数据量的分类 id = tags.get(0).getId(); } model.addAttribute("tags",tags); model.addAttribute("page",newsService.listNews(id,pageable)); model.addAttribute("activeId",id); session.setAttribute("query",""); return "tags"; } newService.listNews(id,pgeable)中id为标签的id,这个方法要做的就是查询出标签中包含id为参数id的所有新闻。
2、业务层代码
NewService.java是一个接口,其中存在以下方法
//根据标签Id查找符合条件的新闻PagelistNews(long id,Pageable pageable);
NewServiceImpl.java为实现NewService接口的类,实现listNews方法
@Override public PagelistNews(long id, Pageable pageable) { return newsRepository.findAll(new Specification() { @Override public Predicate toPredicate(Root root, CriteriaQuery cq, CriteriaBuilder cb) { //外连接查询 Join Join join =root.join("tags"); return cb.equal(join.get("id"),id); } },pageable); }
NewsRepository.java 继承了JpaSpecificationExecutor
public interface NewsRepository extends JpaRepository, JpaSpecificationExecutor { @Query("select n from News n where n.recommend = true ") List findTop(Pageable pageable); @Query("select n from News n where n.title like ?1 or n.content like ?1") Page findByQuery(String query,Pageable pageable); @Query("select function('date_format',n.updateTime,'%Y') as year1 from News n group by year1 order by year1 desc ") List findGroupYear(); @Query("select n from News n where function('date_format',n.updateTime,'%Y') = ?1 ") List findByYear(String year);}
看完了这篇文章,相信你对"Java中如何实现jpa外连接查询join"有了一定的了解,如果想了解更多相关知识,欢迎关注行业资讯频道,感谢各位的阅读!
标签
查询
新闻
方法
接口
篇文章
最大
业务
代码
参数
完了
就是
数据
更多
条件
知识
行业
资讯
资讯频道
频道
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
戴尔服务器134
阿里云网络技术公司
天津服务器虚拟化定做云主机
经济学家常用数据库
怎么知道是否安装数据库
服务器存在安全风险
软件开发过程及其相关技术
数据库的并发操作有可能带来
编程软件开发是干嘛的
临沭县网络安全宣传周
韩山师范学院网络安全专业
湖南企业软件开发收费
一起来学习计算机网络安全知识吧
软件开发加密码
信息网络安全专家会
运维管理软件开发解决方案
软件开发的质量体系
如何创建服务器集群
萌芽网络技术
数据库学校考勤建模
合肥软件开发外包项目
镇江网络技术咨询哪家好
有哪些推荐的中文数据库
包河区服务管理软件开发
软件开发毕业培训
dhcp服务器连不上网怎么办
服务器数据返回异常怎么解决
服务器域名可以访问吗
江苏省考网络技术岗
数据库分区的好处