Jak przeprowadzić walidację danych wejściowych w JAGUAR Struts?
Oct 17, 2025
Zostaw wiadomość
Hej tam! Jako dostawca JAGUAR Struts, ostatnio otrzymuję wiele pytań dotyczących sposobu przeprowadzania walidacji danych wejściowych w JAGUAR Struts. Pomyślałem więc, że napiszę ten post na blogu, aby podzielić się kilkoma wskazówkami i trikami, których nauczyłem się przez lata.
Na początek porozmawiajmy o tym, czym jest sprawdzanie poprawności danych wejściowych i dlaczego jest ważne. Walidacja danych wejściowych to proces sprawdzania danych wejściowych użytkownika, aby upewnić się, że spełniają one określone kryteria. Jest to ważne, ponieważ pomaga zapobiegać błędom i lukom w zabezpieczeniach aplikacji. Na przykład, jeśli masz formularz pytający o wiek użytkownika, możesz sprawdzić, czy wprowadzone dane są liczbą z zakresu od 0 do 120. Jeśli nie zweryfikujesz danych wejściowych, użytkownik może wprowadzić coś w rodzaju „abc” lub „999”, co może spowodować awarię aplikacji lub nieoczekiwane zachowanie.
Przejdźmy teraz do szczegółów sprawdzania poprawności danych wejściowych w JAGUAR Struts. Można to zrobić na kilka sposobów, ale ja skupię się na dwóch głównych metodach: użyciu struktury walidacji Struts i użyciu niestandardowych metod sprawdzania poprawności.
Korzystanie ze struktury walidacji Struts
Struktura walidacji Struts to wbudowana funkcja JAGUAR Struts, która pozwala zdefiniować reguły walidacji dla Twoich formularzy. Aby skorzystać ze struktury walidacji, musisz utworzyć plik reguł walidacji i skonfigurować aplikację Struts tak, aby z niego korzystała.
Oto przykład pliku reguł walidacji:
<?xml wersja="1.0" encoding="UTF-8"?> <!DOCTYPE formularz-validation PUBLIC "-//Apache Software Foundation//DTD Struts Validation Framework 1.3.10//EN" "http://struts.apache.org/dtds/validation-1.3.10.dtd"> <form-validation> <formset> <form name="myForm"> <pole właściwość="nazwa użytkownika" zależy="required,minlength"> <arg0 key="error.username.required"/> <arg1 key="error.username.minlength" Resource="false"/> <var> <var-name>minlength</var-name> <var-value>5</var-value> </var> </field> <field property="password" zależy="required,minlength"> <arg0 key="error.password.required"/> <arg1 key="error.password.minlength" Resource="false"/> <var> <var-name>minlength</var-name> <var-value>8</var-value> </var> </field> </form> </formset> </form-validation>
W tym przykładzie definiujemy reguły sprawdzania poprawności formularza o nazwie „myForm”. Formularz posiada dwa pola: „nazwa użytkownika” i „hasło”. Pole „nazwa użytkownika” jest wymagane i musi mieć długość co najmniej 5 znaków, natomiast pole „hasło” jest wymagane i musi mieć długość co najmniej 8 znaków.
Aby skonfigurować aplikację Struts do korzystania z pliku reguł sprawdzania poprawności, musisz dodać następujący kod do plikustruts-config.xmlplik:
<plug-in className="org.apache.struts.validator.ValidatorPlugIn"> <set-property property="pathnames" value="/WEB-INF/validator-rules.xml"/> </plug-in>
Ten kod mówi Struts, aby użył pliku reguł sprawdzania poprawności znajdującego się pod adresem/WEB-INF/validator-rules.xml.
Po skonfigurowaniu aplikacji do korzystania z pliku reguł sprawdzania poprawności można używać struktury sprawdzania poprawności na stronach JSP. Oto przykład:


<%@ taglib uri="http://struts.apache.org/tags-bean" prefix="bean" %> <%@ taglib uri="http://struts.apache.org/tags-html" prefix="html" %> <%@ taglib uri="http://struts.apache.org/tags-logic" prefix="logic" %> <%@ taglib uri="http://struts.apache.org/tags-tiles" prefix="tiles" %> <%@ taglib uri="http://struts.apache.org/tags-validator" prefix="validator" %> <html:form action="/myAction" name="myForm"> <html:text property="username"/> <validator:errors property="username"/> <html:text property="password"/> <validator:errors property="password"/> <html:submit value="Submit"/> </html:form>
W tym przykładzie używamyHTML:teksttag, aby utworzyć pola wejściowe dla pól „nazwa użytkownika” i „hasło”. Używamy równieżwalidator: błędytag, aby wyświetlić wszelkie występujące błędy sprawdzania poprawności.
Korzystanie z niestandardowych metod walidacji
Oprócz korzystania ze środowiska sprawdzania poprawności Struts można także używać niestandardowych metod sprawdzania poprawności danych wejściowych. Niestandardowe metody sprawdzania poprawności to metody Java zdefiniowane w klasach akcji.
Oto przykład niestandardowej metody sprawdzania poprawności:
klasa publiczna MojaAkcja rozszerza Akcja { public ActionForward wykonanie (mapowanie ActionMapping, formularz ActionForm, żądanie HttpServletRequest, odpowiedź HttpServletResponse) zgłasza wyjątek { MójForm myForm = (MyForm) formularz; String nazwa użytkownika = myForm.getUsername(); Hasło tekstowe = myForm.getPassword(); if (nazwa użytkownika == null || nazwa_użytkownika.length() < 5) { request.setAttribute("nazwa użytkownika błędu", "Nazwa użytkownika musi mieć co najmniej 5 znaków"); zwróć mapowanie.getInputForward(); } if (hasło == null || hasło.length() < 8) { request.setAttribute("errorPassword", "Hasło musi mieć co najmniej 8 znaków"); zwróć mapowanie.getInputForward(); } // Jeśli weryfikacja przebiegła pomyślnie, kontynuuj akcję return mapping.findForward("success"); } }
W tym przykładzie definiujemy niestandardową metodę sprawdzania poprawności w naszej klasie akcji. Metoda sprawdza pola „nazwa użytkownika” i „hasło”, aby upewnić się, że spełniają określone kryteria. Jeśli weryfikacja się nie powiedzie, w żądaniu umieszczamy komunikat o błędzie i zwracamy dane wejściowe dalej. Jeżeli weryfikacja przebiegła pomyślnie, kontynuujemy akcję.
Aby użyć niestandardowej metody sprawdzania poprawności na stronach JSP, możesz użyć następującego kodu:
<%@ taglib uri="http://struts.apache.org/tags-bean" prefix="bean" %> <%@ taglib uri="http://struts.apache.org/tags-html" prefix="html" %> <%@ taglib uri="http://struts.apache.org/tags-logic" prefix="logic" %> <%@ taglib uri="http://struts.apache.org/tags-tiles" prefix="tiles" %> <html:form action="/myAction" name="myForm"> <html:text property="username"/> <logic:present name="errorUsername"> <bean:write name="errorUsername"/> </logic:present> <html:text property="password"/> <logic:present name="errorPassword"> <bean:write name="errorPassword"/> </logic:present> <html:submit value="Submit"/> </html:form>
W tym przykładzie używamylogika: obecnatag, aby sprawdzić, czy w żądaniu znajduje się komunikat o błędzie. Jeśli pojawi się komunikat o błędzie, używamy metodyfasola: napisztag, aby go wyświetlić.
Wniosek
Sprawdzanie poprawności danych wejściowych w JAGUAR Struts jest ważną częścią tworzenia bezpiecznych i niezawodnych aplikacji. Używając struktury walidacji Struts lub niestandardowych metod walidacji, możesz mieć pewność, że dane wejściowe użytkownika spełniają określone kryteria i zapobiegać błędom i lukom w zabezpieczeniach.
Jeśli szukasz wysokiej jakości rozpórek JAGUAR, koniecznie sprawdź naszeAmortyzatory sportowe przednie do JAGUARIAmortyzator i zespół amortyzatora Jaguar. Oferujemy szeroką gamę produktów, które zaspokoją Twoje potrzeby i zapewnią doskonałą obsługę klienta.
Jeśli masz jakiekolwiek pytania lub chcesz omówić swoje potrzeby związane z zakupami, nie wahaj się z nami skontaktować. Jesteśmy tutaj, aby pomóc Ci znaleźć odpowiednie rozwiązania dla Twoich pojazdów JAGUAR.
Referencje
- Dokumentacja rozpórek
- Przewodnik po frameworku walidacji Apache Struts
