vo or entity에 아래와 같이 annotation 설정

@Temporal(TemporalType.DATE)
@DateTimeFormat(pattern = "yyyy-MM-dd")

 

//시간_yyyymmdd
  @Temporal(TemporalType.DATE)
  @DateTimeFormat(pattern = "yyyy-MM-dd")
  private Date rdYmd;

 

날짜 범위 인덱스 적용을 위해서

yyyy-MM-dd 형태로 사용하기 위해서

 

controller에서 처리해야 할 부분

@DateTimeFormat annotation을 사용해서 정의 한다

 

조회 쪽 서비스 단에서는 

stdate <-- java.util.Date

eddate <-- java.util.Date

형태로 설정 한다.

 

또는 

Controller단에서는 String을 사용하고 조회시 service단에서 Date로 변경해서 처리 해도 됨.

아래 에서는 그냥 Date를 사용함 ..

 

 

 @GetMapping("/list.html")
    public String list(Model model,
                       @PageableDefault(value = 20, size = 20) Pageable pageable,
                       @DateTimeFormat(pattern = "yyyy-MM-dd") Date stdate,
                       @DateTimeFormat(pattern = "yyyy-MM-dd")Date eddate){
                       
        Page<RdocVO> rdocVOPage =  rdocService.selectAll(pageable, stdate,eddate);
        PageUtil pageUtil = new PageUtil(rdocVOPage);
        model.addAttribute("pageUtil",pageUtil);
        model.addAttribute("list", rdocVOPage.getContent());
        model.addAttribute("stdate",DateUtil.toYYYY_MM_DD(stdate));
        model.addAttribute("eddate",DateUtil.toYYYY_MM_DD(eddate));

        return "ui/rdoc/list";
    }
    

 

 

DateUtil에 date --> String yyyy-MM-dd  형태로 변형 해주는 유틸

public static String toYYYY_MM_DD(Date date) {
        if(date!=null) {
            SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd");
            return formatter.format(date);
        }else{
            return null;
        }
    }

 

반응형
블로그 이미지

visualp

c#, java

,