본문 바로가기
운영체제란? 운영체제란?(Operating System, OS)실행할 프로그램에 필요한 자원을 할당하고 프로그램이 올바르게 실행되도록 돕는 특별한 프로그램운영체제는 실행되고 있는 프로젝트이므로 메모리에 적재되어 실행된다. 그러나 메모리 중에서도 따로 커널 영역이라는 곳에 저장이 된다. 덧붙이자면, 메모리는 커널 영역, 사용자 영역으로 나눌 수 있는데, 일반적으로 사용되는 응용 프로그램은 사용자 영역에 저장된다. 메모리 구조+---------------------+| 사용자 영역 | ← 대부분의 프로그램이 여기서 실행| (User Space) | - 웹 브라우저| | - 게임| | - 문서 편집기+-.. 2025. 5. 19.
[Java] record가 뭐야? 회사에서 새로운 프로젝트를 시작하게 되었는데, 그 프로젝트에선 Response 객체를 만들 때 class 대신 record를 쓰더라 이냥 저냥 다른 분들이 쓰신 코드 따라 나도 사용했지만 record의 본질은 하나도 모른 채 사용했었다…그래서 오늘 정리해보겠다 !  간략한 소개record는 JDK14에서 preview로 등장하여 JDK16에서 정식 스펙으로 포함되었다.불변(immutable) 객체를 쉽게 생성할 수 있도록 하는 유형의 클래스  👀 record가 나오기 전에는?우리가 흔히 아는 DTO class를 생각해보자public class Student { private String name; private int age; public Student(String name, int age) { th.. 2025. 3. 25.
[Spring] 스프링에서 WAS가 실행되는 과정 스프링부트는 내장 톰캣을 갖고 있다. 그러다보니 나는 너무 편하게 개발을 하고 있었다. 정작 그 기반이 되는 서블릿은 잘 모르고 있었다. 오늘은 WAS와 서블릿에 대해 알아보고, 스프링에서의 구조도 알아보자  서블릿이 정확히 뭐지?서블릿을 클라이언트(웹 브라우저)로부터 HTTP 요청을 받아 처리하고, 결과를 응답하는 Java 프로그램이다. 쉽게 말해서 동적인 로직을 처리해주는 .servlet 확장자의 파일이다. 이렇게만 알고 밑에 사진을 봐도 어느정도 이해하기 좋다.  서블릿 컨테이너가 존재하며, 그 안에서 서블릿들을 관리하는 구조다. 요청에 따라 쓰레드가 할당되고 적절한 서블릿이 실행되는 것  그렇다면 서블릿 컨테이너가 뭘까?서블릿 컨테이너는 Java 서블릿을 실행하고 관리하는 환경을 제공하는 소프트웨.. 2025. 3. 24.
[IntelliJ] 파일 커밋(diff) 창이 분리될 때 + 해결 방법 인텔리제이를 사용하다가 실수로 창을 분리시켜 버렸다...나는 이런 사소한 게 너무 불편해서 바로 방법을 찾아보았다   인텔리제이 설정에 들어와서 (command + ,) Advanced Settings에 들어가서 아래로 쭉 내려서 찾아보면 Open Diff as Editor Tab이 보일 거다 체크 버튼을 눌러 해당 옵션을 활성화 시켜주자 ! 그럼 바로 원래대로 돌아왔다 ㅎㅎ심신의 안정...!  그럼 이만 2025. 2. 24.
백준 - 2903번 중앙 이동 알고리즘 (Java 풀이) https://www.acmicpc.net/problem/2903  문제 해석입력 받은 수 N번째의 점 갯수를 구하면 되는 간단한 문제다. 초기 상태의 한 변에는 점이 2개 있고, 총 4개의 점이 있다. (2의 2승)N이 1일 때, 한 변에는 점이 3개 있고, 총 9개의 점이 있다. (3의 2승)N이 2일 때, 한 변에는 점이 5개 있고, 총 25개의 점이 있다. (5의 2승) 이렇게만 봐도 어떤 규칙인지 알 수 있다. 한 변의 점의 갯수에 2승을 한 결과가 출력값으로 나오면 된다.  그렇다면 입력 받은 N으로 한 변의 점 갯수를 구하면 되겠네!!?아주 간단하다. 2의 N승 + 1를 하면 된다. N이 1일 때, 2의 1승 + 1은 3이다. 그럼 3에 2승을 한 값은 9다. 그럼 사각형에 있는 점의 총 갯.. 2025. 1. 5.
[Spring] 메시지 컨버터(HttpMessageConverter)는 컨버전 서비스가 적용되나요? 컨버터, 포맷터, 컨버전 서비스에 대해 배우다 보니 그렇다면 메시지 컨버터(HttpMessageConverter)에도 컨버전 서비스(ConversionService)가 적용되나 궁금해졌다.결론부터 말하면 HttpMessageConverter는 ConversionService가 적용되지 않는다.두 개념의 동작 방식을 비교해보자.   HttpMessageConverter요청 및 응답 본문의 직렬화(Serialization)와 역직렬화(Deserialization)를 수행한다.JSON, XML 또는 기타 형식을 객체로 변환하거나, 객체를 JSON, XML 등으로 변환하는 작업을 처리한다.ex) JSON ➡️ 객체,  객체 ➡️ JSON { "name" : "jihae", "age" : 25 } ➡️ User.. 2024. 12. 14.