본문 바로가기

꿈(개발)

NOT EMPTY, like NOT NULL

이 참 간단한 문제를 이렇게 고민고민 하다가 이제서야 찾아서 포스팅^^

empty => 비어있다!!!!
EL에서는 어떻게 쓰일까????? NULL 이다!!!
반대로 NOT NULL 로 쓸떄는 어떻게 표현해야 할까???

not empty 이다. ${ example.box != null } 이렇게 백날 써봤자 소용없다는 얘기!!

${ not empty example.box } 이렇게 써야 한다.


EL is more forgiving than is the Java programming language regarding null values in expressions. In the Java programming language, the expression a.getB().getC() throws a NullPointerException if a.getB() returns null. Not so in EL. The EL expression ${a.b.c} returns null if ${a.b} is null -- it does not throw an exception. This makes writing expressions easier. To check for null explicitly, use either the empty operator, or compare the expression to null using == or the is keyword, like this:

   <c:if test="${a.b is null}">
   <c:if test="${empty a.b}">
   <c:if test="${a.b == null}">

JSP 2.0 Expression Language Tech Tip

EL은 expression의 null 값에 관해서는 자바 프로그래밍 언어보다 더 관대하다. 자바 프로그래밍 언어에서는 a.getB()가 null을 리턴하면, a.getB().getC()NullPointerException를 발생시킨다. 하지만 EL에서는 만약 ${a.b}가 null이면 EL expression ${a.b.c}는 null을 리턴하고 예외를 발생시키지 않는다. 이는 식을 쉽게 작성할 수 있도록 도와준다. Null에 대해 좀 더 명쾌하게 이해하고자 한다면, empty연산자를 사용하거나 ==를 이용해서 식과 null을 비교해보거나, is 키워드를 사용해볼 수 있다.

   <c:if test="${a.b is null}">
   <c:if test="${empty a.b}">

<c:if test="${a.b == null}">