서론 로그인 접속 기록 기능을 개발하던 중이었고, 로그아웃 시간도 같이 기록을 해야 했다. 사용자가 로그아웃 버튼을 클릭했을 때의 로그아웃 시간 기록은 쉽게 처리할 수 있었다. 하지만 세션 만료 시 자동 로그아웃 시간을 기록하고 브라우저를 닫았을 때에도 자동 로그아웃 시간을 기록하는 부분은 구현하는 데 어려움이 있었다. 기존 작성된 코드에서는 프론트에서 세션 시간이 만료되면 /logout 컨트롤러 보내 로그아웃 처리를 진행하고 있다.그래서 이 /logout 컨트롤러에서 로그인했던 세션 정보를 가져와 로그아웃 시간을 기록하고, 세션을 삭제하면 되겠다고 생각을 했다. 문제 : getSession()이 null이라고? 하.지.만.. 문제는 세션 시간이 종료되면 세션 정보가 자동으로 삭제되기 때문에 /..
문제 테스트 중 사이즈가 0인 파일을 저장해보려고 했는데 저장이 제대로 되지 않았다 private Content createContent(MultipartFile file, String description) throws Exception { if (file != null && !file.isEmpty()) { // 저장 } return null;} 이런 식으로 file이 null이 아닐 때 + 비어있지 않다면~ 을 기준으로 파일을 저장했었다. 파일 사이즈가 0이면 isEmpty와 동일하게 판단되어 비어 있는 것으로 처리되었고, 그 결과 저장이 되지 않았다. 해결private Content createContent(MultipartFile file, String description) thro..
JSP(JavaServer Pages)는 서버에서 동적으로 HTML 페이지를 생성하기 위한 기술이다.JSP 페이지에서 특정 설정이나 기능을 사용하려면, 페이지 지시자(디렉티브)와 태그 라이브러리를 선언해야 한다.이 글에서는 JSP에서 자주 사용되는 page와 taglib 디렉티브, 그리고 JSP 디렉티브의 표기 방식인 에 대해 알아보겠다. 1. page 디렉티브 디렉티브는 JSP 페이지의 설정을 정의하는 데 사용된다.주로 페이지의 인코딩 방식이나 프로그래밍 언어를 지정합니다. 아래는 주요 속성들이다:language: JSP에서 사용할 프로그래밍 언어를 지정한다. 기본적으로 Java를 사용하며, "java"로 설정한다.contentType: 응답의 MIME 타입과 문자 인코딩 방식을 지정한다. 예를 ..
Spring 프로젝트를 만들 때 Type을 Maven으로 설정한다. 그렇다면 Maven은 뭘까? Maven Maven은 프로젝트를 관리하고 빌드에 도움을 주는 도구이다. 그리고 Maven은 프레임워크이다. (프레임워크라 정해진 동작 방식이 있다.(LifeCycle) LifeCycle에 대한 내용은 추후 다른 게시글에서 다루도록 하겠다.) https://velog.io/@dovnaldisn/%EB%9D%BC%EC%9D%B4%EB%B8%8C%EB%9F%AC%EB%A6%AC%EC%99%80-%ED%94%84%EB%A0%88%EC%9E%84%EC%9B%8C%ED%81%AC%EC%9D%98-%EA%B3%B5%ED%86%B5%EC%A0%90%EA%B3%BC-%EC%B0%A8%EC%9D%B4%EC%A0%90 라이브러..