JPA原生insert\delete\update\select语句

原文地址:https://blog.csdn.net/Amy_Queen/article/details/72454099

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 o.name 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 r.name 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);

阅读更多
个人分类: Hibernate/MyBatis
想对作者说点什么? 我来说一句

oracle基础语法培训.ppt

2015年10月28日 1.32MB 下载

SQL语句大全,精辟集合

2009年11月02日 1.67MB 下载

没有更多推荐了,返回首页

不良信息举报

JPA原生insert\delete\update\select语句

最多只允许输入30个字

加入CSDN,享受更精准的内容推荐,与500万程序员共同成长!
关闭
关闭