สร้างโครงการ
ใช้แนวคิดในการสร้างโครงการฤดูใบไม้ผลิและเลือกเว็บการตรวจสอบและ Freemarker
ตรวจสอบเอฟเฟกต์ก่อน
สร้างคลาสเอนทิตี
สร้างและเพิ่มคำอธิบายประกอบรหัสมีดังนี้
บุคคลระดับสาธารณะใช้ serializable {@notnull @Length (min = 3, max = 10) // ความยาวของชื่อผู้ใช้อยู่ระหว่าง 3-10 ชื่อผู้ใช้สตริงส่วนตัว 3-10; @notnull @min (18) // อายุน้อยที่สุดคืออายุจำนวนเต็มส่วนตัวอายุ 18 ปี @NotNull // ใช้ความสม่ำเสมอเพื่อตรวจสอบฟิลด์ข้อความ: ตั้งค่าข้อมูลของการตรวจสอบความล้มเหลว @Pattern (regexp = "[//w-///.like+@( [[//w-like+//.)+ สตริงสาธารณะ getEmail () {ส่งคืนอีเมล; } โมฆะสาธารณะ setEmail (อีเมลสตริง) {this.email = อีเมล; } สตริงสาธารณะ getUserName () {ส่งคืนชื่อผู้ใช้; } โมฆะสาธารณะ setUserName (ชื่อผู้ใช้สตริง) {this.userName = ชื่อผู้ใช้; } Public Integer Getage () {return Age; } การตั้งค่าโมฆะสาธารณะ (อายุจำนวนเต็ม) {this.age = อายุ; -กำหนดค่าคอนโทรลเลอร์
รหัส:
@ControllerPublic คลาส WebController ขยาย WebMVCCONFigurerAdapter {@Override โมฆะสาธารณะ AddViewControllers (ViewControllerRegistry Registry) {// เพิ่มเส้นทางและตั้งค่าชื่อรีจิสทรี } @getMapping ("/") สตริงสาธารณะ showform (บุคคลบุคคล) {return "แบบฟอร์ม"; } @PostMapping ("/") Public String CheckPersonInfo (@Valid Person Person, BindingResult BindingResult, RedirectAttributes RedirectAttributes) {// ใช้ bindingResult เพื่อตรวจสอบความถูกต้องของข้อมูลรูปแบบถ้า (bindingResult.haserrors () redirectattributes.addflashattribute ("บุคคล", บุคคล); กลับ "ฟอร์ม"; } return "Redirect:/ผลลัพธ์"; -หมายเหตุ: อย่าลืมคำอธิบายประกอบ @Valid
หน้าฟอร์ม
แท็กสปริงใช้ในหน้าแบบฟอร์มเพื่อรับข้อมูลที่ไม่สามารถตรวจสอบได้ หากคุณต้องการใช้แท็กสปริงใน Spring-Boot คุณสามารถวางไฟล์ Spring.ftl ในทรัพยากรแล้วเพิ่มการกำหนดค่าต่อไปนี้ใน Application.yml
PRINSE.FTL PATH FILE: org.springframework.web.servlet.view.freemarker.spring.ftl
ฤดูใบไม้ผลิ: Freemarker: การตั้งค่า: Auto_Import: /spring.ftl เป็นฤดูใบไม้ผลิ
รหัสหน้าแบบฟอร์ม
<form action = "/" method = "post"> <div> <label for = "username"> ชื่อผู้ใช้ </label> <@spring.bind "person.username"/> <อินพุตประเภท = "text" id = "username" name = "username" value = "$ {person.username! <div> <label for = "อายุ"> อายุ </label> <@spring.bind "person.age"/> <อินพุต type = "number" id = "อายุ" name = "age" value = "$ {person.age! "person.email"/> <อินพุต type = "text" id = "อีเมล" name = "อีเมล" value = "$ {person.email!}" placeholder = "อีเมล"/> <span> <@@spring.showerrors ""/> </span> </div> หมายเหตุ: คุณต้องใช้ก่อน <@spring.bind "person.username"/> เพื่อผูกฟิลด์แล้วใช้ <@spring.showErrors ""/> เพื่อรับข้อความแสดงข้อผิดพลาด
อ้างถึง
https://spring.io/guides/gs/validating-form-input/
สรุป
ด้านบนเป็นตัวแก้ไขแนะนำให้คุณทราบว่าการตรวจสอบแบบฟอร์ม Hibernate-Validator ถูกเพิ่มลงในสปริงบูตและแสดงข้อความแสดงข้อผิดพลาดในเทมเพลต Freemarker (แนะนำ) ฉันหวังว่ามันจะเป็นประโยชน์กับทุกคน หากคุณมีคำถามใด ๆ โปรดฝากข้อความถึงฉันและบรรณาธิการจะตอบกลับทุกคนในเวลา ขอบคุณมากสำหรับการสนับสนุนเว็บไซต์ Wulin.com!