본문 바로가기

JSP&SERVLET

[JSP_Servlet] EL_JSTL_taglib

 

표현식보다 편리하게 값을 출력한다.

 

$를 사용하면 사용한 순간 변수는 세팅되어 set을 해도 변하지 않음

C:set > EL 변수를 생성해줌

 

#을 사용하여 변수를 할당하면 후에 set을 해주면 값이 변함

변수에 값을 세팅하고 그 변수명을 추후 뽑을 때 사용됨

 

$ : 즉시 출력 추후 변경을 해주어도 변경된 값으로 변하지 않음

# : 임시저장으로 생각하면됨. 추후 변경될 것을 대비하여 임시로 저장하는데 쓰임

#은 곧바로 생성하는 것이 아니기 때문에 템플릿 텍스트에서는 사용될 수 없다.

C:out 속성은 #을 허용하기 때문에 사용은 가능하다.

 

EL 표현언어도 11개의 기본객체를 제공한다.

 

Param 요청 파라미터

${param.id} 요렇게 jsp에 써놓으면 url?id=shinnim > 요렇게 넘긴 파라미터(shinnim)가 찍힘

 

 

 

EL에서는 프로퍼티의 이름을 사용해서 값에 접근이 가능하다.

Cookie.value

 

 

정수,실수,문자열 타입변환은 자동으로 이루어지며

Cookie.name 이나 cookie[name] 이나 같은 결과를 리턴한다. 결국 둘이 같다는 의미

 

*****EL의 분석하는 방식

 

 

 

수치연산자

 

 

 

 

 

 

연산자 우선순위

 

특수문자 앞에 \를 넣어주면 문자열로 처리됨

 

 

 

커스텀태그, taglib맛보기

오늘 날짜를 리턴해주는 메서드 생성

EL에서 클래스의 메서드를 사용하기 위해서는 클래스 메서드를 static으로 정의해야한다. Static이 아닌 메서드는 사용할 수 없다.

 

Name 스페이스는 아무렇게나 지어도 관계없음 엘리먼트의 중복을 제거하기 위해 019편참조

1.     Function : EL에서 사용할 함수를 정의. 한 개의 함수당 한 개의 function 태그를 사용한다.

2.     Name : EL에서 사용할 함수의 이름을 정의

3.     Function-class : 완전한 이름을 지정

4.     Function-signature : 함수 기능을 실행할 메서드를 명시한다. 리턴 타입과 인자의 타입은 완전한 클래스 이름을 적는다. 인자의 경우 이름은 적지 않으며 타입만 적는다.

 

Web.xml TLD파일에 대한 내용을 추가해주어야한다.

1.     Taglib : 사용할 태그 라이브러리를 지정한다.

2.     Taglib-uri : JSP에서 해당 태그 라이브러리를 참조할 때 사용하는 식별자

3.     Taglib-location : 태그는 태그 라이브러리를 기술한 TLD 파일의 위치를 명시한다.

 

 

 

EL을 사용하는 이유

속성을 뽑을 때 간결하다.

 

속성을 연결할 때 또한 간편하다.

 

함수호출 또한 EL이 간결하다.

 

JSP2.0 이전 버전이 나오기 전까지는 EL은 아무런 기능을 제공하지 않는 단순 문자였다. JSP버전으로 변경하는 경우에는 단순문자가 에러가 날 수 있으므로 비활성화 옵션이 필요한거임.

 

 

 

 

 

 

 

 

'JSP&SERVLET' 카테고리의 다른 글

[JSP_Servlet] 파일업로드_인코딩  (0) 2021.03.27
[Java/JSP] JDBC 데이터베이스 프로그래밍  (0) 2021.03.25
[JSP_Servlet] 쿠키  (0) 2021.03.24
[JSP_Servlet] include_forward_param  (0) 2021.03.23
[JSP&Servlet] push 채팅  (0) 2021.03.22