목록개발/JAVA (5)
Developer's Development
Case) - 다른 화면이나 브라우저 간에도 계속해서 남은 시간이 갱신되는 30분 세션 타이머 생성 - 서버 측에서 세션 타이머를 관리하고, 클라이언트 측에서 서버에 주기적으로 요청하여 세션의 비활동 경과 시간을 업데이트 - 설정 파일(application.yml)에서도 세션의 기본 만료 시간을 설정 세션의 시간과 관련된 주요 메서드 - getLastAccessedTime() // 세션이 마지막으로 접근된 시간을 반환함. 세션의 활동 여부를 확인하거나 세션의 유효성을 판단하는 데 사용함. - getMaxInactiveInterval() // 세션의 최대 비활동 시간을 초 단위로 반환함. 세션의 만료 시간을 확인하는 데 사용할 수 있음. - getCreationTime() // 세션이 생성된 시간을 반환함..
javax.crypto 파일 암/복호화 포스팅에서 이어지는 이야기 2023.11.15 - [개발/JAVA] - [JAVA] javax.crypto 파일 암/복호화 [JAVA] javax.crypto 파일 암/복호화 Case) 파일 업로드 시, 암호화(내용 암호화/파일명 난수 생성, 확장자 enc로 변경)해서 서버 업로드 파일 다운로드 시, 서버에 업로드된 파일 경로와 원래 파일명(확장자 포함)을 전달받아 복호화( developer-mylee.tistory.com Case) 서버에 업로드된 파일 경로와 원래 파일명(확장자 포함)을 전달받아 복호화(내용 복호화/원래 파일명, 원래 확장자로 변경)해서 미리보기 및 다운로드 이번 포스팅은 backend와 frontend 사이 파일 전송만을 목적으로 하기에, 암/..
Case) 파일 업로드 시, 암호화(내용 암호화/파일명 난수 생성, 확장자 enc로 변경)해서 서버 업로드 파일 다운로드 시, 서버에 업로드된 파일 경로와 원래 파일명(확장자 포함)을 전달받아 복호화(내용 복호화/원래 파일명, 원래 확장자로 변경)해서 다운로드 Reference https://hongik-prsn.tistory.com/75 JAVA 암호화와 복호화 Cipher 먼저 암호화라는 개념은 너무나 간단합니다 내가 가진 원문의 메세지를 상대방이 해석할 수 없게 하는 것이 바로 암호화의 목적 javax.crypto.Cipher 클래스는 암호화 알고리즘을 나타낸다. 암호를 hongik-prsn.tistory.com 삽질 기록 (바쁘신 분은 바로 맨 아래로 이동 권장) Reference 참고하고, GP..
Java Apache POI 엑셀파일 생성 및 다운로드 시, 파일을 열면 '제한된 보기' 경고가 뜨는 이슈. 물론 엑셀에서 보안 설정을 변경하면 되긴 하지만, 모든 사용자의 환경이 그렇진 않기에 굉장히 거슬리는 부분이었다. 이게 또 로컬에서 테스트할 땐 괜찮은데 배포하고 나면 그러더라.. 해결한 방안은, POI로 엑셀파일을 생성할 때 파일의 보안 설정을 (비활성화하도록) 명시적으로 설정하기. Workbook workbook = new XSSFWorkbook(XSSFWorkbookType.XLSX); XSSFWorkbookType.XLSX ← 이 부분이 중요하다. 아래는 해당 코드를 적용한 엑셀파일 생성 전체 예제 코드 import org.apache.poi.ss.usermodel.Workbook; imp..
case) DB에 저장되어 있는 영문 약자(콤마로 구분되어 있는 String)를 상수 처리한 한글로 변환하여 화면 List에 반환하고자 함. VVO, FUK, PUS ▶ 블라디보스톡, 후쿠오카, 부산 1. 상수 처리 클래스 public static class airportNm { final public static String VVO = "VVO"; final public static String FUK = "FUK"; final public static String PUS = "PUS"; public static String getValue(String Key) {return map.get(key);} public final LinkedHashMap map = new LinkedHashMap(); st..