본문 바로가기
728x90

Java23

스프링의 실행 순서 스프링 시작 1. 톰캣 시작 - 서버작동 2. web.xml 로딩 3. web.xml에 등록되어 있는 ContextLoaderListener (Java Class) 생성 4. context.xml에 등록되어 있는 Spring Container 구동 5. 클라이언트로부터 웹 어플리케이션 요청이 들어옴 6. DispatcherServlet이 생성 7. DispatcherServlet은 context.xml 로딩 8. 구동 순서 8.1 클라이언트가 해당 어플리케이션에 접근하면 접근한 URL 요청을 DispatcherServlet이 가로챔 8.2 RequestMappingHandlerMapping이 해당 요청을 처리할 컨트롤러를 찾음 8.3 RequestResponseBodyMethodProcessor가 con.. 2022. 3. 11.
JAVA의 깊은 복사, 얕은 복사 #얕은 복사 1번을 2번에 복사할 경우 1번이 수정이 일어나거나 2번이 수정이 발생하면 둘다 수정이 된다. 얕은 복사는 주소값을 복사하기 때문에 주소로 값을 참조하여 값이 변경되면 해당 값을 참조하고 있는 배열들의 값이 변경된다. int[] a = {1, 2, 3}; int[] b = a; b[0] = 2; 를 한 후 System.out.println(Arrays.toString(a)); System.out.print(Arrays.toString(b)); 를 할경우 [2, 2, 3] [2, 2, 3] 을 출력하게 된다. #깊은 복사 1번을 2번에 복사할 경우 1번이 수정이 일어나거나 2번이 수정이 발생해도 값은 수정이 발생한 곳만 변경된다. 주소값을 참조하는 것이 아닌, 새로운 메모리 공간에 값을 복사하.. 2021. 12. 30.
JVM이란 #JVM이란? JVM이란 자바 가상 머신(Java Virtual Machine)의 약자로 줄여 부르는 말이다. JVM은 자바 애플리케이션을 class loader를 통해 읽어 자바 API와 함께 실행하는 것이다. JVM은 JAVA와 OS사이에 위치해 중개자 역할을 수행하여 OS에 구애받지 않고 재사용이 가능하게 해준다.(어디서든 실행 가능) JVM은 스택 기반의 가상머신이다. #자바프로그램 실행 과정 1. 프로그램이 실행되면 JVM은 OS로부터 프로그램이 필요로 하는 메모리를 할당 받는다. 2. 자바 컴파일러(javac)가 자바 소스코드(.java)를 읽어 자바 바이트코드(.class)로 변환시킨다. (자바를 처음 배울 때 콘솔창에서 직접 실행시키는 방법을 대신 해준다.) 3. Class Loader를 .. 2021. 12. 25.
JAVA 관련 deep한 내용들이 나와있는 사이트 정리 https://www.grepiu.com/post/9 GrepIU www.grepiu.com 각종 Collections들의 시간복잡도 2021. 12. 24.
728x90