Sobes.tech
Junior

JSTL аркылуу каталардын иштетилиши кандай болот?

sobes.tech AI

AIден жооп

JSTL JSP беттеринде каталардын иштетилиши үчүн тегдердин топтому бар.

Негизги механизмдер:

  1. <c:catch> теги: Өзүнүн ичинде пайда болгон исключениелерди кармай алат.

    • var атрибуту кармалган исключениени сактай турган өзгөрмө атын көрсөтөт (тип java.lang.Throwable).
    • Исключение пайда болсо, var өзгөрмөсү null болбойт.
    <%-- `c:catch` колдонуу мисалы --%>
    <c:catch var="exception">
        <%-- Каталарга алып келиши мүмкүн болгон код --%>
        <% int divisionByZero = 10 / 0; %>
    </c:catch>
    
    <c:if test="${not empty exception}">
        <%-- Катанын маалыматын чыгарып берүү --%>
        <p>Каталар болду: ${exception.message}</p>
    </c:if>
    
  2. Каталар баракчалары (Error Pages): Жеке түрдөгү исключениелерди же бардык исключениелерди иштетүү үчүн JSP баракчаны конфигурациялоо мүмкүн. Бул web.xml файлынын <error-page> элементтери аркылуу ишке ашырылат:

    <!-- Каталар баракчасынын конфигурациясы мисалы -->
    <error-page>
        <exception-type>java.lang.Throwable</exception-type>
        <location>/errorPage.jsp</location>
    </error-page>
    
    <error-page>
        <error-code>404</error-code>
        <location>/notFound.jsp</location>
    </error-page>
    
    • Каталар баракчасында JSTL тегтерин колдонуп, exception өзгөрмөсү аркылуу жеткиликтүү болгон исключениенин маалыматын чыгара аласыз.

Тест таблицеси:

Механизм Максаты Ишке ашуучу чөйрө
<c:catch> JSP кодунда исключениелерди кармоо JSP беттин бөлүгү
Каталар баракчалары Исключениелер жана ката коддорун борборлоштуруу Бардык колдонмо JSP беттери

Бул ыкмалардын айкалышы веб-колдонмолордо ийкемдүү жана ишенимдүү каталарды иштетүүнү камсыздайт. <c:catch> күтүлгөн исключениелерди жергиликтүү иштетүү үчүн ылайыктуу болсо, каталар баракчалары күтүлбөгөн кырдаалдар үчүн глобалдуу иштетүү үчүн ылайыктуу.