Bagaimana saya bisa memvalidasi jika sebuah String adalah nol atau kosong menggunakan tag c dari JSTL?
Anda dapat menggunakan empty
kata kunci dalam <c:if>
untuk ini:
<c:if test="${empty var1}">
var1 is empty or null.
</c:if>
<c:if test="${not empty var1}">
var1 is NOT empty or null.
</c:if>
Atau <c:choose>
:
<c:choose>
<c:when test="${empty var1}">
var1 is empty or null.
</c:when>
<c:otherwise>
var1 is NOT empty or null.
</c:otherwise>
</c:choose>
Atau jika Anda tidak perlu membuat sekelompok tag secara kondisional dan karenanya Anda hanya bisa memeriksanya di dalam atribut tag, maka Anda dapat menggunakan operator kondisional EL ${condition? valueIfTrue : valueIfFalse}
:
<c:out value="${empty var1 ? 'var1 is empty or null' : 'var1 is NOT empty or null'}" />
Untuk mempelajari lebih lanjut tentang ${}
hal - hal itu ( Bahasa Ekspresi , yang merupakan subjek terpisah dari JSTL ), periksa di sini .
Lihat juga:
empty
tidak berfungsiSet
saat menggunakan JSTL 1.0 kuno. Anda harus meningkatkan ke JSTL 1.1 (yang sudah dari tahun 2003).${not empty var1}
memeriksa keduanya kosong dan nol secara bersamaan? Maksudku tes dievaluasi untuk benar jika dan hanya jikavar1
adalah tidak nol danvar1
yang tidak kosong. Apakah tidak perlu memeriksa secaranull
terpisah?empty
equvilant to ne ''String
nilai, ini setara denganvar ne null and var ne ''
. Lebih lanjut itu juga mendukungObject
, array,Collection
danMap
.untuk juga memeriksa string kosong, saya sarankan berikut
Ini juga menangani nulls
sumber
jika Anda hanya memeriksa nol atau kosong maka Anda dapat menggunakan opsi with default untuk ini:
<c:out default="var1 is empty or null." value="${var1}"/>
sumber
Kode ini benar tetapi jika Anda memasukkan banyak spasi ('') alih-alih string kosong atau kosong, false.
Untuk memperbaiki ini gunakan ekspresi reguler (kode ini di bawah ini memeriksa apakah variabelnya nol atau kosong atau kosong sama dengan org.apache.commons.lang.StringUtils.isNotBlank):
sumber
Inilah liner satu.
Operator ternary di dalam EL
sumber
Kamu bisa menggunakan
kalau tidak.
sumber
Berikut adalah contoh cara memvalidasi int dan String yang Anda berikan dari Java Controller ke file JSP.
MainController.java:
importJavaToJSPExamples.jsp
sumber
sumber