JPA like 模糊查询 语法格式解析
作者:十&年 时间:2022-06-16 20:43:42
JPA like 模糊查询 语法格式
public List<InstitutionInfo> getAllInstitution(final Application app){
String zdGljg = null;
Sysuser user = (Sysuser) app.getUser();
String userGljg = user.getGljg();
if("00".equals(userGljg.substring(4, 6))){//市级机构权限
zdGljg = userGljg.substring(0, 4) + "%";
}else if("00".equals(userGljg.substring(6, 8))){//区县级机构权限
zdGljg = userGljg.substring(0, 6) + "%";
}else{//乡镇级机构权限
zdGljg = userGljg + "%";
}
Query query = entityManager.createQuery("select s from InstitutionInfo s where s.gljg like :zdGlbh ");
query.setParameter("zdGlbh", zdGljg);
List<InstitutionInfo> adg =query.getResultList();
return adg;
}
模糊查询:Spring Data JPA 如何进行模糊查询(LIKE) ?
Spring MVC + Spring Data JPA+模糊查询
为了方便起见,service直接忽略,方便理解。
一. 方法一
1. Controller层:
方法参数如下,一定要加 "%"+name+"%"
/**
* @description:
* @author: czx<15610554031@163.com>
* @date: 2018/1/22 下午5:15
* @version: V1.0
*/
@RestController
public class UserController {
@Autowired
private TeamRepository teamRepository;
@GetMapping("/findByNameLike")
public List<Team> findByNameLike(String name) {
// 一定要加 "%"+参数名+"%"
return teamRepository.findByNameLike("%"+name+"%");
}
}
2. Dao层:
一定要使用 JPA 规定的形式 findBy+参数名+Like(参数)
/**
* @description: 数据层
* @author: czx<15610554031@163.com>
* @date: 2018/1/18 上午10:52
* @version: V1.0
*/
public interface TeamRepository extends JpaRepository<Team, String> {
List<Team> findByNameLike(String name);
二. 方法二
1. Controller:
参数简单化
/**
* @description:
* @author: czx<15610554031@163.com>
* @date: 2018/1/22 下午5:15
* @version: V1.0
*/
@RestController
public class UserController {
@Autowired
private TeamRepository teamRepository;
@GetMapping("/findByNameLike")
public List<Team> findByNameLike(String name) {
return teamRepository.findByNameLike(name);
}
}
2.Dao层:
需要自己定义SQL语句
/**
* @description:
* @author: czx<15610554031@163.com>
* @date: 2018/1/18 上午10:52
* @version: V1.0
*/
public interface TeamRepository extends JpaRepository<Team, String> {
@Query(value = "select t from Team t where t.name like %?1%")
List<Team> findByNameLike(String name);
来源:https://blog.csdn.net/xubenxismile/article/details/52403128
标签:JPA,like,模糊查询,语法格式
![](/images/zang.png)
![](/images/jiucuo.png)
猜你喜欢
Spring Security整合CAS的示例代码
2023-11-12 19:04:26
java前后端加密解密crypto-js的实现
2023-11-29 12:09:31
ReentrantLock源码详解--公平锁、非公平锁
2023-04-22 17:18:56
![](https://img.aspxhome.com/file/2023/1/69691_0s.png)
Springcloud微服务架构基础知识解析
2023-01-26 14:37:10
![](https://img.aspxhome.com/file/2023/0/61820_0s.png)
SpringBoot实现异步事件驱动的方法
2023-11-01 07:48:54
Java对List进行排序的两种实现方法
2022-10-31 13:40:06
![](https://img.aspxhome.com/file/2023/8/65758_0s.png)
Java简单实现SpringMVC+MyBatis分页插件
2023-09-09 23:08:45
Java画笔的简单实用方法
2021-11-01 05:38:10
Java实战之在线租房系统的实现
2022-09-29 04:44:18
![](https://img.aspxhome.com/file/2023/8/60808_0s.jpg)
Java数据结构学习之栈和队列
2022-02-21 11:32:45
![](https://img.aspxhome.com/file/2023/3/61593_0s.png)
Java的数据类型和参数传递(详解)
2022-12-30 18:52:25
![](https://img.aspxhome.com/file/2023/7/72297_0s.png)
java基础的详细了解第六天
2021-11-05 16:18:49
![](https://img.aspxhome.com/file/2023/8/65348_0s.png)
Java+Swing实现医院管理系统的完整代码
2023-03-17 00:40:21
![](https://img.aspxhome.com/file/2023/1/74991_0s.jpg)
Spring Boot实现异步请求(Servlet 3.0)
2023-11-27 06:26:47
IDEA设置背景为自定义照片的操作方法
2022-12-28 09:13:08
![](https://img.aspxhome.com/file/2023/5/61645_0s.jpg)
浅谈Java中方法参数传递的问题
2021-11-06 04:24:46
![](https://img.aspxhome.com/file/2023/4/60034_0s.png)
Java logback日志的简单使用
2023-07-15 01:32:33
springboot 动态数据源的实现方法(Mybatis+Druid)
2021-07-26 04:27:00
![](https://img.aspxhome.com/file/2023/8/68188_0s.png)
Java Spring事务的隔离级别详解
2022-04-25 23:07:52
![](https://img.aspxhome.com/file/2023/1/71211_0s.jpg)
Spring Security过滤器链体系的实例详解
2023-08-25 03:24:15
![](https://img.aspxhome.com/file/2023/8/58208_0s.png)