분류 전체보기(255)
-
[템플릿] DTO to Entity, Entity to DTO
Entity를 DTO로 변환시키거나, DTO를 Entity로 변환시킬 때 사용하는 기본 코드입니다. Entity to DTO @Entity public class Something { ... private String name; private String email; ... public SomethingResponseDto toResponseDto(){ return SomethingResponseDto.builder() .name(name) .email(email) .build(); } } 사용하는 방법 SomethingResponseDto responseDto = something.toResponseDto(); Entity to DTO List 사용하는 방법 List responseDtoList = s..
2023.04.17 -
Spring Security Session기반 인증 방식 VS Spring Security + JWT토큰 인증 방식
Spring Security Session 기반 인증 방식 디렉토리 구조 📁config 📁 auth © CustomUserDetails © CustomUserDetailsService © SecurityConfig 📁 controller © IndexController 📁 model © User 📁 repository ⓘUserRepository 1. SecurityConfig @Configuration public class SecurityConfig { @Bean public BCryptPasswordEncoder encodePwd() { return new BCryptPasswordEncoder(); } @Bean public SecurityFilterChain filterChain(HttpSecu..
2023.04.12 -
[기술면접] 운영체제 - 2/2
1편에 이어서 작성하겠습니다. ⭐ 데드락(DeadLock) 이란? 데드락(DeadLock) 또는 교착상태란 한정된 자원을 여러 프로세스가 사용하고자 할 때 발생하는 상황으로, 프로세스가 자원을 얻기 위해 영구적으로 기다리는 상태입니다. ▶ 데드락의 4가지 조건에 대해 설명해 주세요. 1. 상호 배제(Mutual Exclusion) : 한 번에 한 프로세스만 공유 자원에 접근 가능합니다. 2. 점유 대기 (Hold & Wait) : 공유 자원에 대한 접근 권한을 가진 채로 다른 자원에 대한 접근 권한을 요구. 3. 비선점 (Nonpreemptive) : 다른 프로세스의 자원을 뺏을 수 없음. 4. 순환 대기 (Circular wait) : 두 개 이상의 프로세스가 자원 접근을 기다릴 때, 관계가 순환적 구..
2023.04.04 -
[기술면접] 운영체제 - 1/2
이미 정리해 둔 운영체제 기술면접 Q&A가 있지만 (욕심부려서.. 이번에는) 다른 분들이 정리해 두신 글을 참고하면서 리마인드 하고자 합니다. 😎 운영 체제(OS, Operating System) 하드웨어를 관리하고, 컴퓨터 시스템의 자원들을 효율적으로 관리하며, 응용 프로그램과 하드웨어 간의 인터페이스로써 다른 응용 프로그램이 유용한 작업을 할 수 있도록 환경을 제공해 주는 소프트웨어입니다. (종류: Windows, Linux, UNIX, MS-DOS 등이 있습니다.) ▶ 운영체제의 역할을 간단하게 말씀해주세요. 1. 프로세스 관리 프로세스, 스레드 스케줄링 동기화 IPC 통신 2. 저장장치 관리 메모리 관리 가상 메모리 파일 시스템 3. 네트워킹 TCP/IP 기타 프로토콜 4. 사용자 관리 계정 관리..
2023.04.04 -
[운영체제] 교착 상태(데드락, Deadlock) - 5/5
교착 상태 (데드락, Deadlock) 둘 이상의 프로세스가 다른 프로세스가 점유하고 있는 자원을 서로 기다릴 때 무한 대기에 빠지는 상황을 일컫습니다. 교착상태를 해결하는 것도 운영체제의 중요한 역할입니다. 교착 상태가 발생했을 때 해결하기 위해선 두 단계의 작업이 필요합니다. 1. 교착 상태가 발생했을 때의 상황을 정확히 표현할 줄 알아야 합니다. 2. 교착 상태가 일어나는 근본적인 이유를 확인합니다. 교착 상태 상황 확인 자원 할당 그래프 교착 상태가 왜 발생하는지 대략적으로 파악할 수 있습니다. 어떤 프로세스가 어떤 자원을 할당받아 사용 중인지 확인 가능 어떤 프로세스가 어떤 자원을 기다리고 있는지 확인 가능 그리는 방법은 매우 쉽습니다. 첫째, 프로세스는 원으로 자원의 종류는 사각형으로 표현합니..
2023.04.03 -
[운영체제] 프로세스와 스레드의 동기화 - 4/5
⭐ 동기화 동시다발적으로 실행되는 프로세스, 스레드는 서로 협력하며 영향을 주고받습니다. 이 과정에서 자원의 일관성을 보장해야 하는데, 이때 필요한 과정이 동기화입니다. * 프로세스 동기화라고 해도 스레드 또한 동기화 대상입니다. 목차 동기화 정의 동기화가 왜 필요할까 동기화를 하지 않을시 발생하는 문제점 동기화를 위한 도구들 (프로세스) 동기화 정의 동기화는 크게 두 가지를 의미합니다. 실행 순서 제어를 위한 동기화 프로세스들을 올바른 순서대로 실행하기 위한 동기화 상호 배제를 위한 동기화 동시에 접근해서는 안 되는 자원에 하나의 프로세스만 접근하게 하는 동기화 실행 순서 제어를 위한 동기화 발생하는 동기화 문제 : reader writer problem 두 프로세스가 있다고 가정하겠습니다. 하나는 W..
2023.04.03