Java

    pom.xml

    javax.servlet javax.servlet-api 3.1.0 provided scope는 4가지가 있다. compile : 컴파일할 때 필요. 테스트 및 런타임에도 클래스패스에 포함된다. scopr를 설정하지 않는 경우 기본값. runtime : 런타임에 필요. JDBC 드라이버 등이 예가 된다. 컴파일 시에는 필요하지 않지만, 실행 시에 필요한 경우. provided : 컴파일 시에 필요하지만, 실제 런타임 때에는 컨테이너 같은 것에서 제공되는 모듈, servlet, jsp, api등이 이에 해당되며, 배포시 제외된다. test : 테스트 코드를 컴파일할 때 필요. 테스트 시 클래스 패스에 포함되며, 배포시 제외된다.

    Maven이란?

    Maven이란?

    1. Maven이란? 프로젝트가 복잡해질수록 사용하는 라이브러리가 많이지고, 프로젝트에 참가하는 사용자가 많아질수록 라이브러리 관리는 어려워진다. 또한 프로젝트가 복잡해질수록 소스를 컴파일하고 배포하는 것도 점점 어려워진다. Maven은 이러한 문제를 해결하기 위한 다양한 도구들 중 하나이다. Maven은 지금까지 애플리케이션을 개발하기 위해 반복적으로 진행해왔던 작업들을 지원하기 위해 등장한 도구이다. Maven을 사용하면 빌드, 패키징, 문서화, 테스트와 테스트 리포팅, git, 의존성 관리, svn등과 같은 형상관리서버와 연동, 배포 등의 작업을 손쉽게 할 수 있다. Maven을 이해하려면 CoC(Convention over Configuration)라는 단어를 먼저 이해해야한다. CoC란 일종의 ..

    JSTL(JSP Standard Tag Library)이란?

    JSTL(JSP Standard Tag Library)이란?

    1. JSTL이란? 프론트 개발자가 JSP를 수정하는데, JSP 안에 자바코드와 HTML 코드가 섞여 있다면, 수정할 때 어려움을 느낄 수 있다. JSTL은 이런 문제를 해결하기 위해 등장했다. JSTL는 JSP 페이지에서 조건문 처리, 반복문 처리 등을 html tag 형태로 작성할 수 있게 도와준다. EL과 연동하면 더욱 강력하게 사용할 수 있다. 예시) java를 사용했을 때 0){ for(int i = 0; i ... 데이터가 없습니다. 예시) JSTL을 사용했을 때 (JSTL을 사용함으로써 java 코드를 없애고 태그 형태로 표현할 수 있다.) ${data.title} 데이터가 없습니다. 2. JS..

    EL(Expression Language)이란?

    EL(Expression Language)이란?

    1. EL이란? EL은 값을 표현하는데 사용되는 스크립트 언어로서 JSP의 기본 문법을 보완하는 역할을 한다. 2. EL이 제공하는 기능 JSP의 스코프(scope)에 맞는 속성 사용 집합 객체에 대한 접근 방법 제공 수치 연산, 관계 연산, 논리 연산자 제공 자바 클래스 메소드 호출 기능 제공 EL만의 기본 객체 제공 3. EL 문법 ${expr} expr - EL이 정의한 문법에 따라 값을 표현하는 식 EL은 JSP의 스크립트 요소(스크립트 릿, 표현식, 선언부)를 제외한 나머지 부분에서 사용될 수 있다. 예제 ${sessionScope.member.id}님 환영합니다. 4. EL의 기본 객체 EL 기본 객체 사용 예 요청 URI : ${pageContext.request.requestURL} req..

    Scope란?

    Scope란?

    1. Scope란? 웹 어플리케이션에서 생성된 변수 또는 객체가 유효한 범위를 말한다. 2. 4가지 scope Application : 웹 어플리케이션이 시작되고 종료될 때까지 변수를 유지하고자 할 때 사용. Session : 웹 브라우저 별로 변수를 관리하고자 할 때 사용 Request : http 요청을 WAS가 받아서 웹 브라우저에게 응답할 때까지 변수를 유지하고자 할 때사용 Page : 페이지 내에서 지역변수처럼 사용. 3. Page Scope PageContext 추상 클래스를 사용한다. JSP 페이지에서 pageContext라는 내장 객체로 사용 가능하다. forward 될 경우 해당 Page scope에 지정된 변수는 사용할 수 없다. 사용 방법은 Application scope나 Sessi..

    Jsp (JavaServer Pages)

    Jsp (JavaServer Pages)

    1. 이론적으론 JSP는 내부적으로 JAVA 이외의 다른 언어를 사용할 수 있지만, JSP에서 사용되는 언어는 JAVA 뿐이다. 2. JSP 페이지에서는 선언문(Declaration), 스크립트 릿(Scriptlet), 표현식(Expression) 이라는 3가지의 스크립트 요소를 제공한다. 3. JSP 실행 순서 브라우저가 웹 서버에 JSP에 대한 요청 정보를 전달한다. 최초로 요청 했을 경우에만 JSP 엔진이 JSP로 작성된 코드가 서블릿으로 변환된다.(java 파일 생성) 서블릿 코드를 컴파일 해서 실행 가능한 bytecode로 변환한다.(class 파일 생성) 서블릿 클래스를 로딩하고 인스턴스를 생성한다. 서블릿이 실행되어 요청을 처리하고 응답 정보를 생성한다. 4. 선언문(Declaration) ..

    스웨거 (Swagger)란?

    스웨거 (Swagger)란? 스웨거는 Web API 문서화를 위한 도구이다. 스웨거 홈페이지에서는 스웨거를 OAS(Open API Specification)이라고 소개하고 있다. 말 그대로 API들이 가지는 명세(Spec)을 관리하기 위한 프로젝트이다. Web API를 수동으로 문서화 하는 것은 굉장히 힘든일인데, Web API의 스펙이 변경되었을 때 문서 역시 변경되어야 하는데 이를 유지하는 것이 쉽지 않다. Swagger를 사용하면 Web API가 수정되더라도 문서가 자동으로 갱신 되기 때문에 편리하다. 스웨거의 기능 스웨거 홈페이지를 가보면 아래와 같은 기능이 있다. API Design API Development API Testing API Mocking and Virtualization API..

    JUnit이란?

    JUnit이란?

    JUnit이란? 프로그래밍 언어마다 테스트를 위한 프레임워크가 존재한다. 이러한 도구들을 보통 xUnit이라고 하며, 자바 언어의 경우는 JUnit이라고 한다. 각 언어마다 사용되는 xUnit은 다음과 같다.