728x90
반응형
이 문서는 구루비에서 작성하였습니다.
EL(Expression Language)이란?
JavaScript 에서 조금 확장하고 XPath(XML 문서의 정보에 접근하기 위해 사용되는 언어)에서 힌트를 얻어 만들어진 언어이다.
그러나 EL은 값이 없는 변수(NULL)에 대해 좀더 관대하고, 데이터 현변환을 좀더 자동적으로 해준다.
이러한 특징들은 파라미터들을 폼에서 얻어오는 웹어플리케이션에 중요하다.
파라미터들이 몇몇 요청에서는 존재하고 어떤 경우에는 값이 없을 수 있으며, 브라우저가 파라미너값을 항상 문자열로 보내는데 반해,
웹어플리케이션에서는 숫자나 boolean로 사용해야 할 경우가 생긴다. EL이 설계된 방식에 따르면, 값이 없을 경우나, 형변환같은 것에 전혀 신경쓸 필요가 없다.
새로운 JSTL1.1 태그 라이브러리 지정자
JSTL1.1은 JSTL을 JSP2.0에 통합하기 위한 마이너 스펙 릴리즈이다. 눈에 띄는 변화는 JSTL1.0의 두개로 분리되었던 라이브러리가 EL과 JAVA표현식 모두를 사용할 수 있는 한가지 라이브러리로 통합된 것이다.
JSTL의 라이브러리들은 다음과 같은 지정자를 사용한다.
Library | URI | Prefix |
---|---|---|
Core | http://java.sun.com/jsp/jstl/core | C |
XML precessiog | http://java.sun.com/jsp/jstl/xml | x |
l18N formatting | http://java.sun.com/jsp/jstl/fmt | fmt |
Database access | http://java.sun.com/jsp/jstl/sql | sql |
Function | http://java.sun.com/jsp/jstl/function | fn |
EF Function
함수명 | 함수설명 |
---|---|
fn:contains(string, sbustring) | string이 substring을 포함하면 return True |
fn:containsIgnoreCase(string, sbustring) | 대소문자 관계없이 string이 substring을 포함하면 return True |
fn:endsWith(string, suffix) | string이 suffix로 끝나면 return True |
fn:escapeXml(string) | stting에 XML과 HTML에서 특별한 의미를 가진 문자들이 있으면, XML엔티티 코드로 바꿔준뒤 문자열 반환 |
fn:indexOf(string, sbustring) | string에서 substring이 처음으로 나타나는 인덱스 반환 |
fn:join(array, separator) | array요소들을 separator를 구분자로 하여 연결해서 반환 |
fn:length(item) | item이 배열이나 컬렉션이면 요소의 객수를 문자열이면 문자의 객수를 반환 |
fn:replace(string, before, after) | string내에 있는 before 문자열을 after 문자열로 모두 변경해서 반환 |
fn:split(string, separator) | string내의 문자열 separetor에 따라 나누어서 배열로 구성해서 반환 |
fn:startsWith(string, prefix) | string이 prefix로 시작하면 return True |
fn:substring(string, begin, end) | string에서 begin인덱스에서 시작해서 end인덱스에 끝나는 부분의 문자열 반환 |
fn:substringAfter(string, sbustring) | string에서 substring이 나타나는 이후의 문자열 반환 |
fn:substringBefore(string, sbustring) | string에서 substring이 나타나는 이전의 문자열 반환 |
fn:toLowerCase(string) | string을 모두 소문자로 바꿔 리턴 |
fn:toUpperCase(string) | string을 모두 대문자로 바꿔 리턴 |
fn:trim(string) | string앞뒤의 공백을 모두 제거하여 반환 |
함수테스트 JSP 소스
<%@page contentType="text/html"%> <%@page pageEncoding="UTF-8"%> <%@taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%> <%@taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions" %> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>JSP Page</title> </head> <body> <h1>EL Function(JSTL1.1)</h1> <c:set var="name" value="Oracle dbms 오라클클럽"/> <c:set var="name" value="${fn:trim(name)}"/><br/> <c:out value="name: ${name}"/><br/><br/> <c:out value="length(name): ${fn:length(name)}"/><br/> <c:out value="toUpperCase(name): ${fn:toUpperCase(name)}"/><br/> <c:out value="toLowerCase(name): ${fn:toLowerCase(name)}"/><br/> <c:out value="substring(name,3,6): ${fn:substring(name,3,6)}"/><br/> <c:out value="substringBefore(name,'dbms'): ${fn:substringBefore(name, 'dbms')}"/><br/> <c:out value="substringAfter(name,'dbms'): ${fn:substringAfter(name, 'dbms')}"/><br/> <c:out value="replace(name, '오라클클럽', 'Korea'): ${fn:replace(name, '오라클클럽', 'Korea')}"/><br/> <c:out value="indexOf(name, 'dbms'): ${fn:indexOf(name,'dbms')}"/><br/> <c:out value="contains(name, 'Oracle'): ${fn:contains(name, 'Oracle')}"/><br/> <c:out value="containsIgnoreCase(name, 'opracle'): ${fn:containsIgnoreCase(name, 'oracle')}"/><br/> <c:out value="startsWith(name, 'Oracle'): ${fn:startsWith(name, 'Oracle')}"/><br/> <c:out value="startsWith(name, 'dbms'): ${fn:startsWith(name, 'dbms')}"/><br/> <c:out value="endsWith(name, '오라클클럽'): ${fn:endsWith(name, '오라클클럽')}"/><br/><br/> <c:remove var="name"/> <c:out value="=================================================================="/><br/><br/> <c:set var="db" value="ORACLE, DB2, MSSQL, MYSQL, SYSBASE"/> <c:set var="db_arr" value="${fn:split(db,',')}"/> <c:forEach var="x" items="${db_arr}"> <c:out value="${x}"/><br/> </c:forEach> <c:out value="${fn:join(db_arr, ',')}"/><br/> </body> </html>
문서에 대하여
- 문서참고 : 이 문서는 TLDDoc Generated Documentation를 참고하여 작성하였습니다.
- 최초작성자 : 김도훈
- 최초작성일 : 2007년 9월 26일
- 이 문서는 오라클클럽 자바 웹개발자 스터디 모임에서 작성하였습니다.
문서정보
- 이 문서는 구루비에서 작성하였습니다.
- 이 문서를 다른 블로그나 홈페이지에 게재하실 경우에는 출처를 꼭 밝혀 주시면 고맙겠습니다.~^^
- 출처 : http://wiki.gurubee.net/pages/viewpage.action?pageId=983139&
- 구루비 지식창고의 모든 문서는 크리에이티브 커먼즈의 저작자표시-비영리-동일조건변경허락(BY-NC-SA) 라이선스에 따라 자유롭게 사용할 수 있습니다.
728x90
반응형
'JSP > 함수' 카테고리의 다른 글
jsp중급_EL,JSTL,커스텀태그 (0) | 2015.11.27 |
---|---|
JSTL fmt을 이용한 데이터 가공 (0) | 2015.03.18 |
JSTL 에서 excape 문자 치환하기 (0) | 2015.02.03 |
[jstl] function 모음 (0) | 2014.11.17 |
[JAVA] Float형의 소숫점 아래 고정자리 표기방법 (0) | 2014.10.23 |
HTML 기초, <form><textarea> 태그와 <input>속성 password, checkbox (25번째) (0) | 2014.09.16 |
Form - placeholder, autofocus (0) | 2014.09.05 |
JSTL_[ forEach, forTokens 에서 varStatus 사용법 ] (0) | 2014.08.26 |