JPA 原生CRUD 语句
发布日期:2021-05-04 16:26:13 浏览次数:22 分类:技术文章

本文共 1333 字,大约阅读时间需要 4 分钟。

jpa 原生insert的sql语句:

@Modifying@Query(value = "insert into t_sys_org_user(org_id,user_id) values(?1,?2)",nativeQuery = true)int addUserToOrg(Long orgId,Long userId);

jpa 原生delete的sql语句:

@Modifying

@Query(value = "delete from t_sys_org_user where org_id=?1 and user_id=?2",nativeQuery = true)
int deleteUserFromOrg(Long orgId,Long userId);

jpa 原生update的sql语句:

@Modifying

@Query(value = "update t_sys_user set status=0 where user_id=?1",nativeQuery = true)
int updateUserStatus(Long userId);

jpa 原生select的sql语句:

//jpa 多对多关系的表联合查询 DAO层

@Query(value = "select s from SysUserDTO s left join s.sysOrgDTOSet o where (?1 is null or s.username like ?1) and (?2 is null or like ?2)")
Page<SysUserDTO> findByUsernameAndOrgName(String username, String orgName, Pageable pageable);
// service层
public Page<SysUserDTO> findByUsernameAndOrgName(String username, String orgName, Pageable pageable){
String name = (username==null)?null:"%"+username+"%";
String orgname = (orgName==null)?null:"%"+orgName+"%";
return sysUserDAO.findByUsernameAndOrgName(name,orgname,pageable);
}

jpa hql中使用in关键字

@Query(value = "select distinct r from SysRoleDTO r left join r.sysOrgDTOSet o where (?1 is null or like ?1) "+

"and (?2 is null or r.code like ?2) and o.id in (?3)")
Page<SysRoleDTO> findAllRole(String name, String code, List<Long> ids, Pageable pageable);

上一篇:Linux 查看文件夹下面文件大小的命令: $ du -sh ./*
下一篇:UML类图关系(泛化 、继承、实现、依赖、关联、聚合、组合)

发表评论

最新留言

网站不错 人气很旺了 加油
[***.192.178.218]2025年03月13日 07时48分10秒