다음 Spring 프로젝트를 보면 servlet-context.xml과 root-context.xml을 볼 수 있습니다. servlet-context.xml servlet-context.xml은 위에 캡쳐화면과 같이 다음 주석과 같이 Dispather Servlet의 request-processing에 관한 내용이 선언이 되었습니다. 즉, 쉽게 이야기 해서 요청과 관련된 객체들을 정의합니다. url 관련 Controller, @(어노테이션), view resolvers, handlerMapping, Intercepter, MultipartResolver 등등. root-context.xml root-context.xml은 위에 캡쳐화면과 같이 다음 주석과 같이 다른 웹 컴포넌트들과 공요하는 자원들을 선언..
Static Page와 Dynamic Pages 1. Static Pages - Web Server는 파일 경로 이름을 받아 경로와 일치하는 file contents를 반환합니다. - 항상 동일한 페이지를 반환합니다. - Ex) image, html, css, javascript 파일과 같이 컴퓨터에 저장되어 있는 파일들. 2. Dynamic Pages - 인자의 내용에 맞게 동적인 contents를 반환합니다. - 즉, 웹 서버에 의해서 실행되는 프로그램을 통해서 만들어진 결과물. * Servlet : WAS 위에서 돌아가는 Java Program - 개발자는 Servlet에 doGet()을 구현합니다. Web Server와 Was의 차이 1. Web Server 1) Web Server의 개념 - 정..
자바스크립트는 프로토타입 기반 언어이자 객체지향언어의 일종입니다. 쉽게 이야기해서 프로토타입이 자바스크립트의 모든 객체들의 부모가 될 수 있습니다. 자바, 파이썬과 같은 객체지향의 언어와 같은경우 클래스라는 것이 존재합니다. 자바스크립트기 객체지향언어지만, 클래스라는 개념이 없이 프로토타입이라는 것을 사용합니다. 그러다 보니 상속기능이 따로 없이 객체를 원형으로 하여 복제의 과정을 통해서 객체의 동작 방식을 다시 사용할 수 있습니다. prototype 객체 Javascript의 모든 객체는 자신의 prototype으로 부터 constructor 프로퍼티를 상속합니다. 인스턴스가 생성되는 순간 prototype의 constructor 생성자 메서드를 호출합니다. 모든 Javascript 함수는 Functi..
1. 일반함수 function 함수명() { //자바스크립트 코드문 } function addFnc(x, y) { return x+y; } - 파싱하는 단계에서 함수 변수인 addFnc가 정의되고 함수를 호출하면 런타임에 x, y가 정의됩니다. - 자바스크립트를 처음 읽을 때만 해석됩니다. - 호출문이 다른 함수보다 앞에 있더라도 호출이 가능합니다. 2. 익명함수 var addFnc function(x, y) { return x+y; } addFnc(x, y); - 이름이 없기 때문에, 접근할때 비로소 해석되고, 실행될때 함수 몸체가 해석됩니다. - 실행코드 블록을 갖는 함수를 정의해 addFnc라는 변수에 할당하고 있습니다. 이렇게 정의된 함수는 이름이 없다. 이름 대신에 변수로 호출을 할 수 있습니다..
//소수타입 전역변수 선언 double mathDouble = 36.142; 1) Math.floor() - 내림 - Math.floor(mathDouble); - 결과값 : 36.0 2) Math.ceil() - 올림 - Math.ceil(mathDouble); - 결과값 : 37.0 3) Math.round() - 반올림 - Math.round(mathDouble); - 결과값 : 37 4) Math.max() - 최대값 - Math.round(mathDouble, 38.6); - 결과값 : 38.6 - 다음 2가지 수 중 38.6이 더 크므로 더 큰 숫자를 반환한다. 5) Math.min() - 최소값 - Math.round(mathDouble, 38.6); - 결과값 : 36.142 - 다음 2가..
1. 공통점 - abstract class와 interface는 선언만 있고 구현 내용이 없는 클래스입니다. - 자기 자신이 new로 객체생성을 해서 사용하는게 불가능합니다. - 추상클래스와 같은 경우 extends를 한 자식클래스나, 인터페이스와 같은 경우 implements한 자식 인터페이스만 객체를 생성할 수 있습니다. 2. 차이점 1) 추상클래스 - 추상클래스와 같은 경우 말그대로 클래스이고, 인터페이스와 같은 경우 구현하기 전 메서드에 대해 명시된것으로도 볼 수 있습니다. - 추상클래스와 같은 경우 반드시 클래스 내에 추상메서드(abstract Method())가 존재해야 합니다. - 오로지 단일상속(extends) 만 가능합니다. - 여러 메서드가 있지만 가져다 쓰거나 오버라이드 하거나, ab..
01. Interceptor의 개념 - Interceptor란 컨트롤러에 들어오는 요청 HttpRequest와 컨트롤러가 응답하는 HttpResponse를 가로채는 역할을 하는것을 일컫습니다. - 싸이클 모델로 살펴보자면 다음과 같습니다. 02. Filter와 Interceptor의 차이. - 인터셉터는 Servlet의 앞, 뒤에서 각각 HttpRequest, HttpResponse를 가로채는 Filter와 역할은 유사 하지만 이 2가지는 분명히 다릅니다. 그래서 차이점을 정리하려고 합니다. 1) 호출 시점 - Filter는 DispatcherServlet이 실행되기 전, Interceptor는 DispatcherServlet이 실행된 후. 2) 설정 위치 - Filter는 web.xml, Interce..
* 간단한 Java의 소개 - 1995년에 미국의 선 마이크로 시스템즈가 개발한 객체지향 프로그래밍 언어이다. * Java언어의 장단점 1) 장점 - 운영체제에 독립적이다. (JVM에서 동작하기 때문에, 특정 운영체제에 종속되지 않는다.) - 객체지향 언어이다. - 기본 자료형을 제외한 모든 요소들이 객체로 표현된다. - 객체 지향 개념의 특징인 캡슐화, 상속, 다형성이 잘 적용된 언어이다. - Garbage Collector를 통해 자동으로 메모리 관리를 해준다. - 오픈소스이다. - 많은 웹개발자들에게 사랑을 받는다. - 멀티스레드를 지원한다. 2) 단점 - 비교적 속도가 느리고 무겁다. - 한번의 컴파일링으로 실행 가능한 기계어가 만들어지지 않고 JVM에 의해 기계어로 번역되고 실행하는 과정을 거치..
1 Error Exception in thread "main" java.lang.NoClassDefFoundError: 파일명 발생경우 클래스 파일을 찾을 수 없는 경우 조언 실행하려는 클래스 파일 이름이 제대로 되어 있는지 확인필요. 또한, CLASSPATH 설정이 제대로 되어 있는지 확인하며, 만약 되어있지 않다면 설정한다. 2 Error cannot resolve symbol symbol : class in (에러가 난 부분) location : class StackTest(찾으려는 위치) 발생경우 이해할 수 없는 클래스나 메소드, 변수명이 올경우 조언 보통 이 에러는 철자가 틀렸을 경우에 많이 발생한다. 클래스, 메소드, 변수의 철자를 세심히 확인해 본다. 특히 철자를 확인할때 대 소문자 구분을 ..
* BOM (Browser Object Model) - 브라우저와 관련된 집합입니다. - 웹서비스 개발과 밀접한 관련이 있습니다. - DOM이 BOM 중 하나로 볼 수 있습니다. - BOM의 최상위 객체는 Window라는 객체입니다. - Window 객체의 하위 객체로 볼 수 있습니다. * DOM (Document Object Model) - '문서 객체 모델' 이렇게 해석할 수 있습니다. - 문서 객체란 , 같은 html문서의 태그들을 자바스크립트가 이용할 수 있는 객체로 만든것을 의미합니다. - 여기서 Model은 객체를 인식하는 방식으로도 볼 수 있습니다. * DOM구조 트리이미지 PS : 트리와 노드에 대해 이해를하면 습득을 하기 편리합니다. * 자바스크립트에서 문서객체를 생성한다는 의미??? -..