본문 바로가기

전체 글

(73)
[cs] @Scheduled(cron = "* * * * *") 아래는 내가 프로젝트 중 스케줄링할 때 썻던 코드 일부임월-금 23시59분에 실행되는 스케줄이었음  @Scheduled(cron = "0 59 23 ? * MON-FRI") public void executeDailyLog() { try { statService.createAbsentLog(); System.out.println("일일 출석 로그가 저장되었습니다."); } catch (Exception e) { System.err.println("출석 로그 저장을 위한 배치 작업 도중 오류가 발생했습니다: " + e.getMessage()); } } 크론 스케줄러유닉스 계열 운영 체제에서 주기..
[ 네트워크 ] http와 https 차이 http는 데이터를 암호화하지 않고 전송하는 반면 https는 ssl/tls를 사용해 데이터를 암호화하여 전송함!    HTTP (HyperText Transfer Protocol)웹 브라우저와 웹 서버 간의 요청-응답 프로토콜로, 인터넷에서 하이퍼텍스트 문서(주로 HTML)를 주고받는 데 사용.포트 번호: 80보안: 암호화되지 않은 텍스트로 데이터를 전송하므로 중간에서 데이터를 가로채면 내용을 쉽게 읽을 수 있음.보안 인증서 : 필요없음.http://www.example.com이 URL을 통해 접속한 웹 페이지는 암호화되지 않은 상태로 데이터를 주고받음.  HTTPS (HyperText Transfer Protocol Secure)HTTP에 SSL/TLS(보안 소켓 계층/전송 계층 보안) 프로토콜을 추..
[Linux] umask 파일과 디렉토리 권한 , ls -l 리눅스에서 파일과 디렉토리 생성 시 기본 권한을 제어하는 중요한 도구. 사용자는 자신의 필요에 맞게 적절한 umask 값을 설정함으로써 시스템의 보안 수준을 높일 수 있음. 기본 개념파일 권한: 리눅스 파일 시스템에서 파일과 디렉토리는 읽기(r), 쓰기(w), 실행(x) 권한을 가지며, 이는 소유자(owner), 그룹(group), 기타 사용자(others)에 대해 각각 설정됩니다.권한 설정: 권한은 3자리의 8진수로 표현됩니다. 예를 들어 755는 소유자에게 rwx, 그룹과 기타 사용자에게 rx 권한을 부여합니다. umask 값umask 값은 파일과 디렉토리 생성 시 기본 권한에서 차감됩니다. 예를 들어, 022 umask 값을 사용하는 경우, 기본 디렉토리 권한은 777에서 022를 빼 755가 됩니..
[ Java ] 이중해시맵 + 예시코드 이중해시맵: 키-값 쌍을 저장하는 해시맵이 또 다른 해시맵을 값으로 가지는 구조.  특정 키에 대한 다중 값을 관리하는 데 유용함. 자바에서는 HashMap 클래스를 사용하여 이중 해시맵을 구현할 수 있음.  해시맵과 비교//해시맵Map studentScores = new HashMap();studentScores.put("Alice", 90);studentScores.put("Bob", 75);//이중해시맵Map> studentGrades = new HashMap();Map aliceGrades = new HashMap();aliceGrades.put("Math", 90);aliceGrades.put("Science", 85);Map bobGrades = new HashMap();bobGrades.pu..
[ 고딩데스드 ] [PCCE 기출문제] 9번 / 이웃한 칸 문제 설명 각 칸마다 색이 칠해진 2차원 격자 보드판이 있습니다. 그중 한 칸을 골랐을 때, 위, 아래, 왼쪽, 오른쪽 칸 중 같은 색깔로 칠해진 칸의 개수를 구하려고 합니다. 보드의 각 칸에 칠해진 색깔 이름이 담긴 이차원 문자열 리스트 board와 고른 칸의 위치를 나타내는 두 정수 h, w가 주어질 때 board[h][w]와 이웃한 칸들 중 같은 색으로 칠해져 있는 칸의 개수를 return 하도록 solution 함수를 완성해 주세요. 이웃한 칸들 중 몇 개의 칸이 같은 색으로 색칠되어 있는지 확인하는 과정은 다음과 같습니다. 1. 정수를 저장할 변수 n을 만들고 board의 길이를 저장합니다. 2. 같은 색으로 색칠된 칸의 개수를 저장할 변수 count를 만들고 0을 저장합니다. 3. h와 w의 ..
[ Docker ] 도커 명령어 모음 실행docker 실행docker run () () ()docker run  실행 과정 ( 생성 + 시작 )1. Image를 pull받음  1) 실행하고자 하는 image가 있는지 검색  2) 있으면 image를 찾고, 없으면 docker hub에서 image 검색2. Docker hub 혹은 Host OS에서 찾은 이미지를 이용해 container를 생성3. Image Layer를 생성하고 그위에 Container Layer를 배치  - Container는 filesystem에 저장이 되고 readable,writable image가 생성됨4. Bridge / network interface를 이용해 docker와 Hosr OS 간의 통신을 열어줌5. 사용 가능한 IT주소 연결6. 애플리케이션을 실행 ..
[ 버전관리 ] 공유 라이브러리 파일로 프로그램의 자체 바이너리 코드로 컴파일 하는 대신 유틸리티를 사용하기 위해 프로그램이 호출해야하는 확장기능 수행. 자신의 코드를 변경하지 않고도 프로그램을 업데이트, 교체할 수 있음release versioning의 경우 X.Y.Z Rule (Major, Minor, Patch)을 따르고 있음 X (Major): 이전 버전과 호환이 안되는 큰 변화가 있을 경우 Y (Minor): 이전 버전과 호환이 가능한 기능이 추가되었을 경우 Z (Patch): 이전 버전과 호환이 가능하며, Bug 수정등 작은 Patch의 경우Versioning 기본 룰:Versioning에 쓰이는 숫자는 음수가 될 수 없으며, 점진적으로 증가하여야 한다. [ 1.9.0 -> 1.10.0 -> 1.11.0 (O..
[cs지식] CORS란? (SOP, Simple Request,Preflight Request) 웹 브라우저는 기본 보안 모델로 서로 다른 오리진 간의 리소스 접근을 제한하는 메커니즘인 SOP(Same Origin Policy : 동일 출처 정책)를 사용함!그런데 만약 다른 오리진과 통신하기 위해서는 SOP보다 완화된 메커니즘이 필요하다. 이게 바로 CORS (Cross Origin Resource Sharing) 이다.  CORS는 웹 브라우저는 보안상의 이유로 다른 출처에서의 리소스 요청을 제한하는 것이 기본적인데 이러한 제한을 완화해 특정 조건 하에서 서로 다른 출처 간의 리소스 요청을 허용하는 것이 CORS이다. 한마디로 웹 브라우저가 서로 다른 오리진* 을 가진 리소스*간의 요청을 제어하는 메커니즘 이다. 오리진 (origin) : protocol과 hostname과 port 리소스 (re..