전체 글
-
MVC 프레임워크 만들기교육 자료 2022. 8. 21. 16:07
프런트 컨트롤러 패턴 모든 요청을 단일 handler(처리기)에서 처리하도록 하는 패턴 중앙 집중식 요청 처리 메커니즘 스프링 웹 MVC 프레임워크의 DispatcherServlet(프런트 컨트롤러 역할)도 프런트 컨트롤러 패턴으로 구현돼 있음 Forward vs Redirect forward 서블릿에서 클라이언트(웹 브라우저)를 거치지 않고 바로 다른 서블릿(또는 JSP)에게 요청하는 방식 URL 주소가 달라지지 않음 forward 방식은 서버 내부에서 일어나는 요청이기 때문에 HttpServletRequest, HttpServletResponse객체가 새롭게 생성되지 않음(공유됨) RequestDispatcher dispatcher = request.getRequestDispatcher("포워드 할 ..
-
Reflection교육 자료 2022. 8. 17. 22:42
Reflection 힙 영역에 로드돼 있는 클래스 타입의 객체를 통해 필드/메소드/생성자를 접근 제어자와 상관 없이 사용할 수 있도록 지원하는 API JVM의 클래스 로더는 클래스 파일에 대한 로딩이 끝나면 클래스 타입의 객체를 생성해서 메모리 힙 영역에 저장함 힙 영역에 로드돼 있는 클래스 타입 객체를 가져오는 3가지 방법 클래스.class 인스턴스.getClass() Class.forName("클래스명") 컴파일 시점이 아닌 런타임 시점에 동적으로 특정 클래스의 정보를 추출해낼 수 있는 프로그래밍 기법 주로 프레임워크 또는 라이브러리 개발 시 사용됨 https://docs.oracle.com/javase/8/docs/technotes/guides/reflection/index.html https://..
-
JDBC 프로그래밍교육 자료 2022. 8. 11. 00:47
JDBC 프로그래밍 01 JDBC 개념 소개 02 DB 커넥션 풀 개념 소개 03 JDBC 프로그래밍 실습 04 실습한 JDCB 코드 리팩토링 및 DB 커넥션 풀 적용 JDBC 개념 소개 JDBC(Java Database Connectivity) 자바 애플리케이션에서 DB 프로그래밍을 할 수 있도록 도와주는 표준 인터페이스 (DBMS 종류에 상관없음) JDBC 인터페이스들을 구현한 구현체들은 각 데이터베이스 벤더 사들이 제공해 준다. 이를 JDBC 드라이버라 한다. 자바 코드에서는 JDBC 인터페이스에만 의존하기 때문에 DB를 변경하더라도 코드를 변경할 필요가 없다. DB 커넥션 풀 개념 소개 DBCP (Database Connection Pool) 미리 일정량의 DB 커넥션을 생성해서 풀에 저장해 두고..
-
도커 및 도커 컴포즈 소개교육 자료 2022. 8. 5. 01:24
도커 컨테이너 기반의 가상화 플랫폼 컨테이너 기반의 가상화 vs 하이퍼바이저 기반의 가상화(OS 가상화) 물리 서버: Host, 가상 서버: Guest Hypervisor(소프트웨어)는 서버 가상화 기술로써 호스트 서버에 설치되어 호스트와 게스트를 나누는 역할을 하고, 각각의 게스트는 하이퍼바이저에 의해 관리되며 시스템 자원을 할당받게 된다. 하이퍼바이저 기반의 가상화 격리된 환경에서 가상 서버를 실행하는 기술 게스트 OS로는 다양한 OS 선택 가능 애플리케이션이 호스트 자원을 사용하기 위해서는 게스트 OS를 거쳐야 한다. 컨테이너 기반의 가상화 격리된 환경에서 프로세스를 실행하는 기술 게스트 OS는 호스트 OS와 동일해야 함 애플리케이션은 도커 엔진을 통해 호스트 자원을 사용할 수 있고 구조적으로 게..