본문 바로가기

⭐🌏 JPA/🌏 JPQL

[JPQL] Like 쿼리를 활용한 검색

# JPQL을 활용하여 like 쿼리를 활용한 검색을 해보자.

1. 컨트롤러

    /**김승현 이라는 이름을 like 조회로 조회하기*/
    @GetMapping("/search_like")
    public GeneralResponse<?> search_like(@RequestParam(value = "description") String description) {
        return boardService.search_like(description);
    }

2. 서비스

    public GeneralResponse<?> search_like(String description) {
        List<BoardEntity> boardEntityList = boardRepository.search_like(description);
        System.out.println("값을 테스트 합니다" + boardEntityList);
        return GeneralResponse.builder()
                .status(true)
                .message("get all")
                .data(boardEntityList)
                .build();
    }

3. 레파지토리

    @Query(value = "select m from board m where m.description like %:description%")
    List<BoardEntity> search_like(@Param("description") String description);

4. 엔티티

@Getter
@Setter
@ToString
@RequiredArgsConstructor
@AllArgsConstructor
@Builder
@Entity(name = "board")
@Table(name = "board")
public class BoardEntity {

    @Id
    @GeneratedValue(strategy = GenerationType.AUTO)
    private long id;

    @Column(name = "title")
    private String title;

    @Column(name = "description")
    private String description;

    @Column(name = "published")
    private boolean published;

5. 브라우저에서 조회 및 결과

다 언제해보냐...