Programming/Languages (Java, etc)41 [JSP] 내장객체 목차 내장객체란 종류 내장객체란 JSP 프로그래밍에서 내장객체란 묵시적으로 이미 정의되어있는 자바 객체입니다. 이미 정의되어있으므로 선언하지 않고 바로 사용이 가능합니다. 선언과 초기화 과정은 필요 없습니다. 내장객체는 JSP 컨테이너가 번역과정 (jsp -> .java) 에서 만들어서 제공합니다. 내장객체는 스크립트릿, 표현식, 표현 언어 등에서 사용이 가능합니다. 종류 request : 클라이언트 (브라우저)의 request 정보 관리 response : 웹 서버 (아파치)의 response 정보 관리 pageContext : JSP 페이지에 대한 정보 관리 session : HTTP 세션 정보 관리 application : 웹 애플리케이션 정보 관리 out : 클라이언트 브라우저에 출력할 때 사용하.. 2022. 11. 10. [JSP] Runtime JSP runtime Hello.jsp 요청이 최초일 경우 웹 컨테이너가 다음과 같이 처리합니다. 번역 : .jsp ->. java (서블릿 프로그램)로 번역 (translate) 컴파일 : .java -> .class (서블릿 클래스)로 컴파일 서블릿 실행, 클라이언트 요청 처리 그러나 Hello.jsp의 요청이 최초가 아닐 경우 이전 과정들을 생략합니다. 번역 : .jsp -> .java (서블릿 프로그램)로 번역 (translate) 컴파일 : .java -> .class (서블릿 클래스)로 컴파일 서블릿 실행, 클라이언트 요청 처리 단, 개발자가 jsp내용을 수정했다면 다시 번역 / 컴파일 과정이 필요한데 이는 웹 컨테이너가 jsp의 수정 일시를 식별하여 자동으로 수행해줍니다. 2022. 11. 2. static 변수에 @Value inject 목차 문제 원인 해결책 참고 문제 foo.properties 파일 str.foo = staticValue java 파일 @Component public class CommonVariables { @Value("${str.foo}") public static String strFoo; //null } 외부 프로퍼티 파일로부터 @Value를 통해 값을 주입하려했으나 null 발생. 원인 스프링은 @Value를 static field에 지원하지 않는다. 해결책 public static String strFoo; @Value("${str.foo}") private void setStrFoo(String strFoo){ CommonVariables.strFoo = strFoo; // "staticValue" } .. 2022. 10. 24. JSP란 목차 JSP란 JSP 요소 JSP란 동적인 웹 콘텐츠 (문서)를 더 편하게 만들기 위해 고안된 서블릿입니다. 기존 서블릿 (JSP가 아닌)의 경우 java class 파일에 html을 작성하고, 컴파일하고, was를 재기동하는 과정이 필요하기 때문에 굉장히 불편합니다. 그러나 JSP는 server side의 JAVA 코드를 스크립트 언어로서 HTML 페이지에 작성할 수 있도록 하는 서블릿입니다. 그리고 컴파일은 WAS (톰캣)가 최초 요청마다 자동으로 컴파일하기 때문에 WAS의 재기동과 같은 과정이 필요 없습니다. 오늘 날짜를 출력하는 웹페이지를 jsp와 jsp가 아닌 서블릿으로 예시를 보여드리면 jsp의 탄생 이유, 편리함이 바로 체감되는데요. jsp가 아닌 서블릿의 경우 아래처럼 작성됩니다. pack.. 2022. 10. 5. JAVA는 call by reference 없습니다. java는 call by reference 없습니다. 목차 call by value와 call by reference, 기본형 (primitive type)과 참조형 (reference type) java가 call by reference처럼 보이는 이유 개인적인 생각 참고 call by value와 call by reference, 기본형 (primitive type)과 참조형 (reference type) call by value (pass by value) 메서드 호출 시 값 (value, 변수의 내용)을 전달 호출자 (호출 scope)의 변수와 매개변수는 서로 완전히 다른 변수 call by reference (pass by reference) 메서드 호출 시 참조(주소)를 전달합니다. 호출자 (.. 2022. 7. 19. 분할정복 알고리즘 목차 분할 정복의 원리 이진 탐색 퀵 정렬 분할 정복의 원리 분할 정복은 순환적으로 문제를 푸는 하향식 방법입니다. 분할 : 주어진 문제 (입력)를 여러 개의 문제로 작게 분할. 정복 : 분할된 작은 문제들을 순환적으로 더 이상 분할되지 않을 때까지 분할, 충분히 작다면 순환 분할을 멈추고 그 문제의 해를 구함 결합 : 작은 문제들에서 정복한 해를 결합하여 원래 문제 (입력)의 해를 구함. 이 때 분할된 작은 문제들은 원래의 문제와 입력의 크기만 다를 뿐 동일합니다. 또한 각 문제들은 서로에게 독립적입니다. 분할 정복 알고리즘의 종류 이진 탐색 합병 정렬 퀵 정렬 선택 문제 이진 탐색 정렬되어있는 배열 (입력 데이터)에서 특정 값을 찾는 탐색 방법입니다. 이 때 찾으려는 값을 탐색키라고 합니다. 순서 분.. 2022. 6. 23. 이전 1 2 3 4 5 6 7 다음