WEB개발/WEB, WAS (5) 썸네일형 리스트형 Class Loader & Hot Deploy Class Loader란?Class Loader는 자바 바이트코드를 읽어들여 클래스 객체를 생성하는 역할을 담당한다. 클래스 로딩 방식에는 load-time dynamic loading과 run-time dynamic loading이 있다.load-time dynamic loading은 클래스를 로딩하는 과정에서 다시 필요한 클래스를 로딩한다. 예를 들어 HelloWorld 클래스 내에 System.out.println이 있다면 java.lang.System을 로딩할 것이다. run-time dynamic loading은 클래스 내 코드를 실행하는 과정에서 필요한 클래스를 로딩한다. Class.forName()을 사용하는 경우가 대표적이다. 클래스 로딩의 순서는?Bootstrap Class Loader.. Jenkins & SVN or Git & Docker 형상관리는 소프트웨어 개발 및 다른 프로젝트에서 코드, 문서, 구성 요소 등의 변경을 관리하고 추적하는 과정을 말합니다. 이를 통해 개발자나 팀은 프로젝트의 이전 버전과 변경 사항을 관리하고, 협업하며, 문제를 해결할 수 있습니다. 1. CI (Continuous Integration) - 지속적 통합목적: 개발자가 작성한 코드를 정기적으로(종종 하루에도 여러 번) 중앙 저장소에 통합하여 코드 충돌을 최소화하고 빠르게 문제를 발견하는 것.주요 활동:코드 변경 사항을 중앙 저장소에 푸시하면 자동 빌드와 테스트가 실행됨.작은 단위로 자주 통합하여 충돌을 줄이고 코드 품질을 보장.필요한 도구: Jenkins, GitHub Actions, GitLab CI, CircleCI 등. CI의 주요 단계:코드 병합: .. TheadLocal & MDC & Log4j2 서버에서 로그를 확인할 경우 grep으로 로그를 캐치할 시 라인단위로 인식하기 때문에 모든 trace를 볼 수 없다. MDC와 log4j2를 사용하면 각 접속한 IP별로 로그를 확인 할 수 있다. ThreadLocal ThreadLocal 변수를 선언하면 멀티 스레드 환경에서 각 스레드마다 독립적인 변수를 가지고, get(), set() 메소드를 통해 값에 대해 접근할 수 있다. public class TestThread implements Runnable { private ThreadLocal threadLocal = new ThreadLocal() { @Override protected DataObj initialValue() { DataObj dataObj = new DataObj(); .. WEB.XML Config (context-param, init-param, web-app ... ) 1. 컨텍스트 초기화 파라미터() - context-param은 init-param 그 이상으로 전역 즉 모든 서블릿에서 사용할 수 있는 파라미터 값이다.- 항목내에 작성- 예) DD상에 작성방법 paraname paravalue - 서블릿 상에서 호출시: getServletContext().getInitParameter("paraname");- 범위: 웹 애플리케이션에 존재하는 어떤 서블릿이나 jsp모두 2. 서블릿 초기화 파라미터()-해당 파라미터 값은 지정해준 서블릿 내에서만 쓸 수 있는 값이다.- 항목 안에 작성- 예) DD상에 작성방법 servletname servletclass paraname paravalue .. ClassPath, ClassLoad, JAVA COMPILE(컴파일), Tomcat 클래스패스란(Class Path)란?? 클래스패스란 말 그대로 클래스를 찾기위한 경로이다. 자바에서 클래스패스의 의미도 똑같다. 즉, JVM이 프로그램을 실행할 때, 클래스파일을 찾는 데 기준이 되는 파일 경로를 말하는 것이다. 소스 코드(.java로 끝나는 파일)를 컴파일하면 소스 코드가 “바이트 코드”(바이너리 형태의 .class 파일)로 변환된다. java runtime(java 또는 jre)으로 이 .class 파일에 포함된 명령을 실행하려면, 먼저 이 파일을 찾을 수 있어야 한다. 이때 .class 파일을 찾을 때 classpath에 지정된 경로를 사용한다. java -cp .:lib/library.jar com.example.Main-cp(또는 -classpath) 옵션으로 클래스패스를 지정합.. 이전 1 다음