คำนำ
หลังจากเรียนรู้ Spring MVC ฉันพบว่า Spring MVC นั้นสะดวกกว่า struts2 เพื่อส่งคืนข้อมูล JSON เพียงใช้ @ResponseBody
@ResponseBody
ใช้เมื่อข้อมูลที่ส่งคืนไม่ใช่หน้าเว็บที่มีแท็ก HTML แต่ข้อมูลในรูปแบบอื่น ๆ (เช่น JSON, XML ฯลฯ );
หากเราไม่ได้กำหนดค่าการประมวลผล JSON ใน SpringMVC เรามักจะได้รับข้อมูลในเลเยอร์คอนโทรลเลอร์และแปลงข้อมูลเป็นสตริง JSON เช่นการเรียก FastJSON สำหรับการแปลงดังนี้
@RequestMapping ("/getCategoryTree") @ResponseBody สตริงสาธารณะ getMcategoryTree () {สตริงข้อมูล = json.tojsonstring (categoryService.getCategoryList ()); ส่งคืนข้อมูล -ด้วยวิธีนี้เมื่อเรามีข้อมูล JSON จำนวนมากที่ต้องส่งคืนเราต้องเขียนการแปลงในแต่ละวิธีแล้วกลับมา การกำหนดค่าต่อไปนี้ในไฟล์การกำหนดค่า XML ของ SpringMVC สามารถกำจัดการดำเนินการแปลงในรหัสอนาคต
การกำหนดค่ามีดังนี้
<bean id = "jsonconverter" class = "org.springframework.http.converter.json.mappingjackson2httpmessageconverter"> </epean>
หมายเหตุ: การกำหนดค่านี้จำเป็นต้องนำเข้าในไฟล์ pom.xml
<Ederency> <roupId> com.fasterxml.jackson.core </groupId> <ratifactid> Jackson-Databind </artifactid> <version> 2.5.4 </version>
ทีนี้ลองดูที่รหัสในเลเยอร์คอนโทรลเลอร์
@RequestMapping ("/getCategoryTree") @ResponseBody รายชื่อสาธารณะ <หมวดหมู่> getCategoryTree () {ส่งคืนหมวดหมู่ Service.getCategoryList (); -ในเวลานี้ไม่มีขั้นตอนของการแปลง JSON แต่โปรดทราบว่าผลการส่งคืนในเวลานี้ไม่ใช่ประเภทสตริงอีกต่อไป แต่ต้องเก็บไว้ให้สอดคล้องกับประเภทการส่งคืนในเลเยอร์บริการ
สรุป
ข้างต้นเป็นเนื้อหาทั้งหมดของบทความนี้ ฉันหวังว่าเนื้อหาของบทความนี้จะมีค่าอ้างอิงบางอย่างสำหรับการศึกษาหรือที่ทำงานของทุกคน หากคุณมีคำถามใด ๆ คุณสามารถฝากข้อความไว้เพื่อสื่อสาร ขอบคุณสำหรับการสนับสนุน Wulin.com