ในแอปพลิเคชั่นเว็บ Java เราจะได้รับเนื้อหาในเนื้อหาคำขอโพสต์ได้อย่างไร และปัญหาที่ต้องให้ความสนใจ
โดยปกติแล้วการใช้คำขอเพื่อรับพารามิเตอร์สามารถรับพารามิเตอร์ที่ส่งโดย URL หรือข้อมูล AJAX โดยตรงผ่าน REQ.GetParameter (ชื่อ) อย่างไรก็ตามร่างกายไม่มีชื่อและไม่สามารถรับได้ผ่านชื่อพารามิเตอร์ ในเวลานี้คุณต้องใช้สตรีม IO เพื่อรับเนื้อหาในร่างกาย
นี่คือรหัส:
แพ็คเกจ com.lenovo.servlet; นำเข้า java.io.bufferedreader; นำเข้า java.io.ioexception; นำเข้า java.io.inputstreamreader; นำเข้า Javax.servlet.servlet.servletexception; นำเข้า Javax.servlet.http.httpservlet; javax.servlet.http.httpservletResponse; นำเข้า org.apache.commons.lang.stringutils; นำเข้า org.apache.log4j.logger; นำเข้า com.alibaba.dubbo.Common.Common.Utils.ioutils; com.lenovo.utils.webcontext; Public Class BusinessServlet ขยาย httpservlet {public Static สุดท้าย logger log. log = logger.getLogger (BusinessServlet.class); / ** * */ ส่วนตัวคงที่สุดท้าย Long SerialVersionUid = 1L; บริการธุรกิจแบบคงที่ส่วนตัว; Static {service = (BusinessService) WebContext.getBean ("BusinessService"); } @Override Void DoGet (httpservletrequest REQ, httpservletResponse resp) โยน servletexception, ioexception {dopost (req, resp); } @Override void dopost (httpservletrequest req, httpservletResponse res) พ่น ServleTexception, ioException {bufferedReader reader = new BufferedReader String body = ioutils.read (reader); ชื่อสตริง = req.getParameter ("ชื่อ"); if (stringutils.isnotblank (ร่างกาย)) {log.info ("ธุรกิจได้รับบางสิ่งบางอย่างด้วยร่างกาย:"+ร่างกาย); } res.Setcharacterencoding ("UTF-8"); Res.setContentType ("Application/JSON"); Res.setStatus (httpservletResponse.sc_ok); res.getWriter (). println (service.getName (ชื่อ)); - ในวิธีการใช้รหัส DOPOST นี้สตรีม IO ใช้เพื่อรับโพสต์ที่ส่งมาดังนั้นเราจึงได้รับพารามิเตอร์ที่ส่งโดยไคลเอนต์
ควรสังเกตว่า: เพื่อให้ได้พารามิเตอร์ของร่างกายคุณต้องเรียกมันก่อนที่จะมีการร้องขอ. getParameter () เมธอด (ถ้าคุณต้องการใช้พารามิเตอร์ querystring) เพราะเมื่อวิธีการ getParameter () เรียกว่าพารามิเตอร์ของร่างกายจะได้รับผ่านการสตรีม iO จะไม่ถูกต้อง
นอกจากนี้ยังใช้วิธีการ Ioutils.read (Reader) ของ Dubbo-2.5.3.JAR ที่นี่เพื่ออ่านเนื้อหาของโพสต์ร่างกาย
ข้างต้นเป็นเนื้อหาทั้งหมดของบทความนี้ ฉันหวังว่ามันจะเป็นประโยชน์ต่อการเรียนรู้ของทุกคนและฉันหวังว่าทุกคนจะสนับสนุน wulin.com มากขึ้น