jpa 원생 사용sql@Query조작 첨삭 검사

2562 단어 jpasql@Query
원생sql@Query조작 첨삭 검사
1.jpa 원생 update 의 sql 구문:
1.명명 매개 변수(이 방식 을 추천 합 니 다):매개 변수 이름 을 정의 할 수 있 습 니 다.할당 할 때@Param("매개 변수 이름")을 사용 할 수 있 습 니 다.순 서 를 상관 하지 않 습 니 다.
@Query 에 매개 변 수 를 전달 하 는 방법 1:이름 매개 변수

/*@Query("delete from product where p.id=:id")
List<Person> testQueryAnnotationParams2(@Param("status") String status, @Param("id") String id);
void updateByProductId(@Param("id") String id);*/
2.색인 매개 변 수 는 다음 과 같 습 니 다.색인 값 은 1 부터 조회 중 입 니까?X"개 수 는 방법 이 정의 한 매개 변수 개수 와 일치 하고 순서 도 일치 해 야 합 니 다.

@Modifying(clearAutomatically=true)
@Query(value = "update Product set status=1 where id=?1",nativeQuery = true)
void updateByProductId(String id);
2.jpa 원생 delete 의 sql 문장:

@Modifying(clearAutomatically=true)
@Query(value = "delete from Productwhere id=?1",nativeQuery = true)
void delByProductId(String id);
3.jpa 원생 insert 의 sql 문장:

@Modifying(clearAutomatically=true)
@Query(value="insert into product(id,name,category,description,status) values(?1,?2,?3,?4,?5)",nativeQuery = true)
void addProduct(String id,String name,String cagetory,String description,String status);
4.jpa 원생 insert 의 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 는 네 이 티 브 sql 구문 으로 작업 을 수행 합 니 다.
여기 서@Query 주석 에 nativeQuery=true 속성 을 추가 하면 네 이 티 브 SQL 문 구 를 사용 하여 조 회 를 작성 할 수 있 습 니 다.

@Query(nativeQuery = true, value = "SELECT * FROM AUTH_USER WHERE name = :name1  OR name = :name2 ")
  List<UserDO> findSQL(@Param("name1") String name1, @Param("name2") String name2);
이상 은 개인 적 인 경험 이 므 로 여러분 에 게 참고 가 되 기 를 바 랍 니 다.여러분 들 도 저 희 를 많이 응원 해 주시 기 바 랍 니 다.

좋은 웹페이지 즐겨찾기