OPEN between Secret

jsp 2 본문

java/JSP

jsp 2

해가꿈꾸는달 2016. 6. 30. 11:48
반응형

JDK (java development kit)) : 개발도구

JRE (java runtime environment)) : 실행환경


JRE만 설치되어 있으면 자바로 개발된 어플리케이션은 실행할수 있음. 그러나 자바를 이용하여 개발은 불가능. 
JDK를 설치하지 않았다면 자바 소스 코드를 컴파일 할 수 없고, 자바 어플리에키션을 jar 파일로 압축할 수 없다.


톰캣을 실행할 때 필요한 환경 변수

환경 변수 

설명 

필수 

JAVA_HOME 

JDK 설치 디렉터리 

필수 

CATALINA_HOME 

톰캣 설치 디렉터리, 설정하지 않은 경우 현재 디렉터리를 값으로 사용 

아님 


El언어(표현언어) -> JSP의 스크립트 요소(스크립트릿,표현식, 선언부)에서는 자바 문법을 그대로 사용가능. 그래서 jsp는 자바 언어의 특징을 그대로 사용할수 있다. 근데 자바 프로그래밍에 익숙하지 않은 jsp 개발자들은 표현식과 스크립트릿을 사용하는데 어려움이 있음. 그래서 나온 것이 표현언어(Expression Language : EL)임.


JSTL : 커스텀테그 중 자주 사용하는 것들을 별도로 표준화한 태그라이브러리.



JSP 페이지 인코딩 관련

PageEncoding & contentType
   -> 파일이 유니코드가 아니고 , 시작 파일이 BOM이 아닌경우 
        1. pageEncoding 속성을 먼저 검사한다.
        2. pageEncoding 속성이 없으면 다음으로 contentType 속성을 검색한다.

    ## PageEncoding 속성에서 명시한 인코딩과 contentType에서 명시한 인코딩이 다른경우 ##
        jsp 페이지를 구현한 파일은 EUC-KR로 인코딩 되고, 응답결과의 캐릭터 셋은 UTF-8로 생성하고 싶다면

-> <%@ page contentType="text/html; charset=utf-8" %>
-> <%@ page pageEncoding="euc-kr" %>

로 하면됨. 즉 pageEncoding으로 파일을 읽어올때 사용할 인코딩을 euc-kr로 지정하고 contentType 속성으로 응답결과를 생성할 때 사용할 인코딩을 UTF-8로 지정하면 됨




톰캣에서 GET 방식 파라미터를 위한 인코딩 처리하기
(Get 방식응ㅇㄹ오 전달되는 파라미터 값에 대한 표준 인코딩 규칙이 정해져 있지 않기 때문에, WAS마다 get 방식의 파라미터 값을 읽어올 때 사용하는 기본 캐릭터 셋이 다름. 톰캣은 기본적으로 ISO-8859-1 을 사용하기 때문에 웹 브라우져에서 eur-kr , utf-8을 이용해서 인코딩한 파라미터를 올바르게 읽어올수 없음)

1. server.xml 파일에서 <Connetctor>의 useBodyEncodingForURI 속성의 값을 true로 지정

-> true로 했을시 파라미터값을 읽어올때 request.setCharacterEncoding() 메서드로 지정한 캐릭터 셋이 적용됨.

2. server.xml 파일에서 <Connetctor>의 URIEncoding 속성의 값으로 원하는 캐릭터 셋을 지정하는 방법

-> 이 방법은 파라미터값을 읽을 때 항상 URIEncoding 속성에서 지정한 캐릭터 셋을 사용함.(이 경우는 request.setCharacterEncoding 으로 지정한 캐릭터 셋은 적용되지 않음.)


만약 1,2 번 속성을 다 사용한 경우 request.setCharacterEncoding 에 알맞은 캐릭터 셋을 지정해 주어야 함.







반응형

'java > JSP' 카테고리의 다른 글

기본 개념 정리  (0) 2015.02.02