검증3 [기능구현#1] 패스워드 검증 추가하기 1. 직접 검증2. BindingResult3. 애노테이션 사용 직접검증HashMap을 이용하여, error를 담고 ModelAttribute로 반환thymeleaf의 조건문과 삼항문을 이용하여, error 인 경우와 정상인경우 렌더링//[Controller] Map errors = new HashMap(); if ( member.getPasswd() != null && member.getPasswd().length() >= 8 ){ if (member.getPasswd().matches("[a-zA-Z]+")){ errors.put("passwd", "비밀번호는 숫자와 특수문자를 포함해야합니다."); }.. 2024. 10. 23. Validation (BindingResult, Validator) + @Validated Validation Validation 방법HashMap 과 StringUtils를 이용한 JAVA 직접 구현 (+ RedirectAttrubutes)BindigResult를 이용Validator 분리 Validatie 구현HashMap 과 StringUtils 및 Redirect 를 이용한 방법HashMap : error 담을 바구니StringUtils : Null 체크redirectAttributes : 리다이렉트시 정보 전달@PostMapping("url")public String func(@ModelAttribute("item") Item item, RedirectAttributes redirectAttributes, Model model){ Maperrors = new Hash.. 2024. 9. 25. HTTP 헤더 #2 ( Cache 와 조건부 헤더 ) Cache 와 조건부 헤더캐시가 필요한 이유 - 요청할때마다 같은 데이터일지라도 전달해줘야한다 - 캐시를 적용하면 네트워크를 사용하지 않아됨 Cache HeaderCache-ControlCache 생명주기 설정가능Last-ModifiedCache 생명주기 끝나고, 데이터가 아직도 유효한지 체크하기 위해 "마지막 수정일자" 사용내용이 바뀌지 않았으면, Cache에 있던 데이터 내용 재사용 검증 헤더검증 헤더는 Cache의 데이터 내용과 서버에 데이터 내용이 일치하는지 검증하는 것ETag 와 Last-Modified"(request) If-Modified-Since => Last Modified" 로 검증"(request) If-None-Match => ETag" 로 검증검증헤더를 통과할 경우, 데이터.. 2024. 8. 26. 이전 1 다음