1. เขียนพารามิเตอร์ของแบบฟอร์มโดยตรงในพารามิเตอร์อย่างเป็นทางการของวิธีการที่สอดคล้องกันของคอนโทรลเลอร์ซึ่งเหมาะสำหรับการส่งวิธี GET แต่ไม่ใช่สำหรับการส่งวิธีการโพสต์
/** * 1. เขียนพารามิเตอร์ของแบบฟอร์มโดยตรงในพารามิเตอร์อย่างเป็นทางการของวิธีการที่สอดคล้องกันของคอนโทรลเลอร์ * @param ชื่อผู้ใช้ * @param รหัสผ่าน * @return */@requestmapping ("/adduser1") สตริงสาธารณะ adduser1 System.out.println ("รหัสผ่านคือ:"+รหัสผ่าน); ส่งคืน "การสาธิต/ดัชนี"; -แบบฟอร์ม URL: http: // localhost/ssmdemo/demo/adduser1? ชื่อผู้ใช้ = lixiaoxi & รหัสผ่าน = 1111111 พารามิเตอร์ที่ส่งจะต้องสอดคล้องกับชื่อพารามิเตอร์ในวิธีการควบคุม
2. รับผ่าน httpservletrequest ทั้งโพสต์และวิธีการรับใช้ก็โอเค
/** * 2. รับผ่าน httpservletRequest * @param Request * @return */@requestmapping ("/adduser2") สตริงสาธารณะ adduser2 (คำขอ httpservletrequest) {string username = request.getParameter ("username"); สตริงรหัสผ่าน = request.getParameter ("รหัสผ่าน"); System.out.println ("ชื่อผู้ใช้คือ:"+ชื่อผู้ใช้); System.out.println ("รหัสผ่านคือ:"+รหัสผ่าน); ส่งคืน "การสาธิต/ดัชนี"; -3. รับผ่านถั่วทั้งโพสต์และรับได้
(1) สร้างถั่วที่สอดคล้องกับพารามิเตอร์ในรูปแบบ
แพ็คเกจ demo.model; คลาสสาธารณะ USERMODEL {ชื่อผู้ใช้สตริงส่วนตัว; รหัสผ่านสตริงส่วนตัว สตริงสาธารณะ getUserName () {ส่งคืนชื่อผู้ใช้; } โมฆะสาธารณะ setUserName (ชื่อผู้ใช้สตริง) {this.userName = ชื่อผู้ใช้; } สตริงสาธารณะ getPassword () {ส่งคืนรหัสผ่าน; } โมฆะสาธารณะ setPassword (รหัสผ่านสตริง) {this.password = รหัสผ่าน; -(2) ใช้ถั่วนี้เพื่อห่อหุ้มพารามิเตอร์ที่ได้รับ
/** * 3. รับผ่านถั่ว * @param ผู้ใช้ * @return */@requestmapping ("/adduser3") สตริงสาธารณะ adduser3 (ผู้ใช้ usermodel) {system.out.println ("ชื่อผู้ใช้คือ:" user.getUserName (); System.out.println ("รหัสผ่านคือ:"+user.getPassword ()); ส่งคืน "การสาธิต/ดัชนี"; -4. รับพารามิเตอร์ในเส้นทางผ่าน @PathVariable
/** * 4. รับพารามิเตอร์ในพา ธ ผ่าน @pathVariable * @param ชื่อผู้ใช้ * @param รหัสผ่าน * @return */@requestmapping (value = "/adduser4/{ชื่อผู้ใช้}/{รหัสผ่าน}", @pathvariable คือ: "+ชื่อผู้ใช้); System.out.println ("รหัสผ่านคือ:"+รหัสผ่าน); ส่งคืน "การสาธิต/ดัชนี"; -ตัวอย่างเช่นเมื่อเข้าถึง http: // localhost/ssmdemo/demo/adduser4/lixiaoxi/111111 ตัวแปรเทมเพลต {ชื่อผู้ใช้} และ {รหัสผ่าน} ใน URL จะถูกผูกไว้กับพารามิเตอร์โดยอัตโนมัติ
5. ใช้คำอธิบายประกอบ @modelattribute เพื่อรับข้อมูลแบบฟอร์มแบบฟอร์มของคำขอโพสต์
แบบฟอร์ม JSP มีดังนี้:
<form action = "<%= request.getContextPath ()%>/demo/addUser5" method = "post"> ชื่อผู้ใช้: <อินพุตประเภท = "text" name = "ชื่อผู้ใช้"/> <br/> รหัสผ่าน: <อินพุตประเภท = "รหัสผ่าน" ชื่อ = "รหัสผ่าน"/> <br/> <
คอนโทรลเลอร์ Java มีดังนี้:
/** * 5. ใช้คำอธิบายประกอบ @ModelAttribute เพื่อรับข้อมูลแบบฟอร์มแบบฟอร์มของคำขอโพสต์ * @param ผู้ใช้ * @return */@requestmapping (value = "/adduser5", method = requestmethod.post) adduser5 (@modelattribute ("ผู้ใช้" คือ: "+user.getUserName ()); System.out.println ("รหัสผ่านคือ:"+user.getPassword ()); ส่งคืน "การสาธิต/ดัชนี"; -6. ใช้คำอธิบายประกอบ @RequestParam เพื่อผูกพารามิเตอร์การร้องขอกับวิธีการป้อนพารามิเตอร์
เมื่อไม่มีชื่อผู้ใช้พารามิเตอร์คำขอจะมีข้อยกเว้นจะเกิดขึ้น คุณสามารถแก้ปัญหาได้โดยการตั้งค่าคุณสมบัติที่ต้องการ = false ตัวอย่างเช่น @requestparam (value = "ชื่อผู้ใช้", จำเป็น = false)
/** * 6. ใช้คำอธิบายประกอบ @RequestParam เพื่อผูกพารามิเตอร์การร้องขอเข้ากับเมธอดและป้อนพารามิเตอร์ * @param ชื่อผู้ใช้ * @param รหัสผ่าน * @return */@requestmapping (value = "/addUser6", method = requestmethod.get) สตริงสาธารณะ System.out.println ("ชื่อผู้ใช้คือ:"+ชื่อผู้ใช้); System.out.println ("รหัสผ่าน") คือ: "+รหัสผ่าน); ส่งคืน" การสาธิต/ดัชนี ";}สรุป
ข้างต้นเป็นวิธีต่าง ๆ ในการรับพารามิเตอร์การร้องขอ URL ของ Springboot ที่แนะนำให้คุณรู้จัก ฉันหวังว่ามันจะเป็นประโยชน์กับคุณ หากคุณมีคำถามใด ๆ โปรดฝากข้อความถึงฉันและบรรณาธิการจะตอบกลับคุณทันเวลา ขอบคุณมากสำหรับการสนับสนุนเว็บไซต์ Wulin.com!