การใช้ @valid จะทำให้การตรวจสอบคำขอของคุณง่ายขึ้น
เมื่อเราพัฒนา API ส่วนที่เหลือ เราเชื่อว่าทุกคนจำเป็นต้องตรวจสอบความถูกต้องของพารามิเตอร์อินพุตของอินเทอร์เฟซ ผู้เริ่มต้นบางคนอาจใช้นิพจน์เงื่อนไข if-else จำนวนมากสำหรับการตรวจสอบ ใช้การลงทะเบียนผู้ใช้ใหม่เป็นตัวอย่าง:
รหัสดังกล่าวสามารถบรรลุวัตถุประสงค์ของการตรวจสอบพารามิเตอร์ได้ แต่ผู้อ่านที่ระมัดระวังอาจพบว่าหากเราต้องการเขียนอินเทอร์เฟซจำนวนมากเช่นนี้ เราจำเป็นต้องเขียนรหัสตรวจสอบซ้ำหลายครั้ง ซึ่งเห็นได้ชัดว่าไม่สวยงาม เราสามารถใช้คำอธิบายประกอบ @valid เพื่อช่วยให้ตรรกะการตรวจสอบง่ายขึ้น
การhibernate-validatorใช้งาน @Valid spring-boot-start-webมีไลบรารีนี้อยู่แล้ว ดังนั้นจึงไม่จำเป็นต้องแนะนำการพึ่งพา หากเป็นโปรเจ็กต์ที่ไม่ใช่สปริง ต้องใช้การพึ่งพา Maven สองรายการ
<dependency>
<groupId>javax.validation</groupId>
<artifactId>validation-api</artifactId>
<version>2.0.1.Final</version>
</dependency>
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-validator</artifactId>
<version>6.0.14.Final</version>
</dependency>
เห็นไหมมันง่ายขนาดนั้น คำอธิบายประกอบบางส่วนทำให้ตรรกะการตรวจสอบที่ซับซ้อนสมบูรณ์ เมื่อการตรวจสอบพารามิเตอร์เป้าหมายล้มเหลว ระบบจะส่งMethodArgumentNotValidExceptionข้อยกเว้น จากนั้นเราสามารถใช้@ExceptionHandlerจัดการผลการตรวจสอบได้
คลาสตัวจัดการข้อยกเว้นส่วนกลางถูกสร้างขึ้นที่นี่ เราใช้ เมธอด parameterExceptionHandlerเพื่อตรวจจับMethodArgumentNotValidExceptionข้อยกเว้น และสุดท้าย จัดการผลลัพธ์ของความล้มเหลวในการตรวจสอบอย่างสม่ำเสมอ เมธอดนี้จะได้รับข้อความแสดงข้อผิดพลาดหลังจากการตรวจสอบความถูกต้องของแต่ละฟิลด์ล้มเหลว ที่นี่ ฉันใช้ErrorResultคลาสเพื่อส่งคืนข้อความแสดงข้อผิดพลาด เมื่อเราเริ่มบริการ เราใช้บุรุษไปรษณีย์เพื่อเริ่มต้นคำขอโพสต์(http://localhost:8080/user/register) เราไม่ป้อนพารามิเตอร์ใด ๆ และส่งคืนผลลัพธ์:
{
"code": -1,
"msg": "the user phone is illegal."
}
เคล็ดลับสี่ประการในการขจัดนิพจน์เงื่อนไขที่ซับซ้อน
เคล็ดลับการเพิ่มประสิทธิภาพสิบวิธีเพื่อให้แอปพลิเคชัน Java ของคุณทำงานเร็วขึ้น
อาการคันในมือของฉันลามไปทั่วเมื่อฉันต่อรองราคากับร้านหนังสือในท้องถิ่นเพื่อซื้อหนังสืออีกเล่มหนึ่ง หนังสือเล่มนี้เหมือนกับหนังสืออื่นๆ ที่ฉันเพิ่งซื้อเมื่อเร็วๆ นี้ จะพบบัลลังก์บนกอง 'To Be Read' (TBR) ของฉัน; และถึงกระนั้นฉันก็ซื้อมัน
เมื่อสัปดาห์ที่แล้วฉันสังเกตเห็นข่าวประชาสัมพันธ์ที่เผยแพร่ผ่าน PressGazette (เว็บไซต์ข่าวของสื่ออังกฤษ) บทความประกาศว่า Acast ซึ่งเป็นบริษัทโฮสติ้งและโฆษณาพอดคาสต์ของ Scandi จะเป็นผู้นำกลุ่มผู้เผยแพร่ "อาจมีอิทธิพลมากที่สุด" ในพอดคาสต์
กี่ครั้งแล้วที่คุณทิ้งขวดพลาสติก เหยือกแก้ว กระป๋องอะลูมิเนียม หรือบรรจุภัณฑ์พลังงานสีเขียวโดยไม่คิดซ้ำสอง กี่ครั้งแล้วที่คุณอยากได้อะไรตอบแทนจากการรีไซเคิลมัน? ถ้าคุณเป็นเหมือนคนส่วนใหญ่ คำตอบคือหลายครั้ง การรีไซเคิลมักถูกมองว่าเป็นเรื่องยุ่งยาก เป็นงานบ้าน หรือเป็นหน้าที่ที่ไม่ก่อให้เกิดประโยชน์ในทันทีหรือจับต้องได้
เพื่อหลีกเลี่ยงความกำกวม เราจะใช้คำศัพท์ต่อไปนี้ ผู้รับรองความถูกต้อง; โทรศัพท์มือถือที่ใช้ในการเข้าสู่ระบบเว็บไซต์; เว็บไซต์หรือแอปพลิเคชันที่ผู้ใช้ใช้เพื่อส่งคำขอเข้าสู่ระบบ ผู้ขายที่ให้บริการเช่น
ในภูมิทัศน์ทางธุรกิจที่มีการพัฒนาอย่างรวดเร็วในปัจจุบัน แนวคิดของการทำงานแบบผสมผสานและการทำงานระยะไกลได้รับแรงผลักดันอย่างที่ไม่เคยมีมาก่อน ในขณะที่บริษัทต่าง ๆ ยังคงปรับตัวให้เข้ากับความต้องการและความคาดหวังที่เปลี่ยนแปลงไปของพนักงาน ผู้เชี่ยวชาญจากหลากหลายสาขาได้มารวมตัวกันเพื่อหารือเกี่ยวกับประโยชน์ ความท้าทาย และอนาคตของวิธีการทำงานที่เปลี่ยนแปลงนี้