EL이란? EL은 스크립틀릿의 다른형태로 표현식보다 간결하고 편리하기때문에 많이 사용된다. EL은 JSTL(JSP Standard Tag Lib) 1.0규약에 소개되고 JSP 2.0부터 포함되었으며 JSP2.1버전부터 EL과 관련된 규약을 문서로 제공한다. JSP2.3에는 표현언어 3.0을 사용한다. 표현언어 EL은 다음과 같은 기능을 제공한다 JSP의 네 가지 기본 객체가 제공하는 영역의 속성 사용 수치연산, 관계 연산, 논리 연산자 제공 자바 클래스 메서드 호출 쿠키, 기본 객체의 속성 등 JSP를 위한 표현 언어의 기본 객체 제공 EL 3.0 람다식을 이용한 함수 정의와 실행 스트림 API를 통한 컬렉션 처리 정적 메서드 실행 표현식 EL ${member.address.zipcode} EL의 데이터..
에러 직접처리 try catch 를 사용합니다. 에러가 발생했습니다. 에러 페이지 지정하기 에러페이지 /error/errorViewPage.jsp errorPage를 지정하면 톰켓의 기본에러페이지 대신 에러가 발생했을때 지정한 에러페이지를 보여줍니다. 이 때 지정된 에러페이지 디렉티브의 isErrorPage를 true로 지정해 주어야 합니다. errorPage로 지정된 JSP 안에서는 exception 기본객체를 사용할 수 있습니다. ※에러페이지의 byte가 512바이트보다 작다면 IE에서는 무시될 수 있습니다. 주석등을 활용해 페이지의 크기가 512바이트 이상이 되도록 해줍니다. 응답상태별로 에러페이지 지정하기 web.xml에 응답상태별로 에러페이지를 지정할 수 있습니다. ... 404 /error/4..
JSP의 4가지 영역 PAGE 하나의 JSP 페이지를 처리할 때 사용되는 영역 pageConext 기본객체 REQUEST HTTP 요청을 처리할 때 사용되는 영역 request 기본객체 SESSION 웹 브라우저와 관련된 영역 session 기본객체 APPLICATION 웹 어플리케이션과 관련된 영역 application 기본객체 기본 객체들의 속성(attribute) 사용하기 setAttribute(String name, Object value) void 이름이 name인 속성의 값을 value로 지정 getAttribute(String name) Object 이름이 name인 속성의 값을 구한다. 지정한 이름의 속성이 존재하지 않으면 null을 리턴 removeAttribute(String name)..
JSP 서블릿은 특정 폴더구조를 따르도록 규정하고 있기 때문에 이 폴더구조를 따라야만 제대로 동작하는 프로젝트를 만들 수 있습니다. project -WEB-INF -classes -lib 위와같은 폴더구조를 가지고 있습니다. WEB-INF : 웹 어플리케이션의 설정 정보를 담고있는 web.xml이 위치하고 있습니다. WEB-INF/clasess : 웹 어플리케이션에서 사용하는 클래스파일이 위치합니다. WEB-INF/lib : 웹 어플리케이션이 사용하는 jar 파일이 위치합니다. WEB-INF의 기본 하위폴더를 제외한 공간에는 HTML, js, JSP, 이미지 등의 파일이 위치합니다. ※서블릿 2.4/JSP 2.0에는 web.xml을 반드시 포함하도록 하지만 서블릿2.5/JSP2.1부터는 web.xml을 ..
response 기본 객체가 제공하는 헤더 추가 메서드 addDateHeader(String name, long date) name 헤더에 date를 추가한다. addHeader(String name, String value) name 헤더에 value를 값으로 추가한다. addIntHeader(String name, int value) name 헤더에 정수 값 value를 추가한다. setDateHeader(String name, long date) name 헤더의 값을 date로 지정한다. setHeader(String name, String value) name 헤더의 값을 value로 지정한다. setIntHeader(String name, int value) name 헤더의 값을 정수 값 val..
톰캣 8버전에서 기본적으로 GET방식으로 전달된 파라미터는 UTF-8로 처리합니다. 따라서 UTF-8 로만 파라미터를 전달할때는 따로 설정하지 않아도 됩니다 UTF-8이 아닌 다른 캐릭터셋을 이용하는 경우가 있다면 톰캣8 server.xml에 아래의 설정을 추가해주면 됩니다. [톰캣설치폴더]/conf/server.xml 변경전 변경후 위의 설정을 하면 GET방식으로 전달된 파라미터값을 읽어올 때 request.setCharacterEncoding() 메서드로 지정한 캐릭터셋을 사용합니다. 참고 https://tomcat.apache.org/tomcat-8.0-doc/config/http.html
request 기본객체 getRemoteAddr() String 웹 서버에 연결한 클라이언트의 IP 주소를 구한다. getContentLength() long 클라이언트가 전송한 요청 정보의 길이를 구한다. 전송데이터 길이를 알 수 없는 경우 -1을 리턴한다. getCharacterEncoding() String 클라이언트가 요청 정보를 전송할 때 사용한 캐릭터의 인코딩을 구한다. getContentType() String 클라이언트가 요청 정보를 전송할 때 사용한 컨텐츠의 타입을 구한다. getProtocol() String 클라이언트가 요청한 프로토콜을 구한다. getMethod() String 브라우저가 정보를 전송할 때 사용한 방식을 구한다. getRequestURI() String 웹 브라우저가..
사용한 기술 및 버전 maven project spring boot 2.4.5 java (jdk 1.8) 프로젝트 생성 아래 사이트에서 spring boot 프로젝트를 필요한 dependencies를 추가해 생성해줍니다. dependencies Spring Boot DevTools, Lombok, Spring Web, H2 Database start.spring.io/ IDE는 이클립스를 사용했습니다. intelliJ나 VSCode등 다른 IDE를 사용해도 무방합니다. DevTools는 자동 재시작등 편의성을 위해서 추가하였습니다. 꼭 추가하지 않아도 괜찮습니다. H2 연동 제가 사용한 DB는 H2 Database 입니다. InMemory DB로 간단한게 실습해볼때 좋은 DB입니다. Dependencie..