• 카테고리

    질문 & 답변
  • 세부 분야

    백엔드

  • 해결 여부

    미해결

주문 검색 필터링 오류시 참고하세요

23.06.23 21:03 작성 조회수 239

1

다른 분들 질문도 찾아보고 저도 어이없는 실수로 고생을 좀 했습니다.

다음 내용 참고하셔서 시간 절약하세요~

 

  1. 컨트롤러 체크

@GetMapping(value = "/orders")
public String orderList(@ModelAttribute("orderSearch") OrderSearch orderSearch, Model model) {
    List<Order> orders = orderService.findOrders(orderSearch);
    model.addAttribute("orders", orders);
    return "order/orderList";
}

위 부분에 문제가 없다면

  1.  

orderService.findOrders -> orderRepository.findAllByString or orderRepository findAllByCriteria 부분에서 쿼리 작성하는 부분 반드시 체크

가끔 복사 붙여넣기 해서 사용하면 띄어쓰기 차이로 오류가 발생하는 경우가 있습니다

꼼꼼하게 확인하시고 한번쯤은 손으로 쳐보세요!

  1. OrderStatus가 enum타입으로 잘 정의되었는지 체크

    public enum OrderStatus {
        ORDER, CANCEL
    }

     

  2. OrderSearch가 잘 정의되었는지 체크

    @Getter @Setter # 글쓴이는 바보같이 Setter를 Service로 작성해서 한참을 헤맸음, 자동완성(tab) 할 때 너무 급하게 하지맙시다...
    public class OrderSearch {
    
        private String memberName;
        private OrderStatus orderStatus;
    
    }

    요렇게만 체크해도 해결되더라구요. 그리고 팁을 좀 드리자면

    웹 페이지(html) 쪽은 사실 복사,붙여넣기해서 사용하면 오류날 곳이 없기 때문에 컨트롤러를 기준으로 차근차근 따라가면서 하나씩 꼼꼼하게 체크하시면 오류 찾기 쉬우실 겁니다!

답변 1

답변을 작성해보세요.

0

인프런 AI 인턴님의 프로필

인프런 AI 인턴

2023.06.25

안녕하세요, 인프런 AI 인턴이에요.

주문 검색 필터링 관련해서 실수로 고생하신 경험이 있으시군요.
제공해주신 코드를 보면 이상한 부분은 없어보입니다. 그래도 쿼리 작성 부분에서 띄어쓰기 차이로 오류가 발생할 수 있기 때문에 조금 더 꼼꼼하게 체크하는 것이 좋겠네요.

저희가 도움을 드릴 수 있는 부분이 있으면 언제든지 말씀해주세요. 감사합니다.