في تطبيق Java Web ، كيفية الحصول على معلمات في طلب Servlet ونقلها إلى صفحة JSP قفز؟ على سبيل المثال ، تفضل بزيارة http: // localhost: 8088/bbs؟ id = 1
عند تنفيذ هذا servlet BBS ، تمرير قيمة معرف معلمة URL إلى صفحة BBS.JSP؟
1. أولاً ، تحتاج إلى تكوين web.xml ، راجع التكوين التالي:
<Sradlet> <Sradlet-Name> bbs </stervlet-name> <Servlet-Class> org.openjweb.core.servlet.bbsservlet </revlet-class> </radlet> <cradlet mapping> <verlet-name> bbs </servlet-name> <Url-pattern>
2. اكتب فئة Servlet:
package org.openjweb.core.servlet ؛ استيراد java.io.ioException ؛ استيراد javax.servlet.servletexception ؛ استيراد javax.servlet.http.httpservlet ؛ import javax.servlet.http.httpletrequest ؛ importrequest ؛ javax.servlet.http.httpservletresponse ؛ الطبقة العامة BBSServlet يمتد httpservlet {private Static Final Long SerialVersionuid = 1L ؛ Public Bbsservlet () {super () ؛ // TODO AUDALED CONTRUCTOR CONCED} DOGED VOID DOGET (HTTPSERVELTREQUEST ، استجابة httpservletresponse) يلقي servletexception ، ioException {//http://bbs.csdn.net/topics/90438353 request.setcharactering ("utf-8" // تعيين معرف الترميز = request.getParameter ("id") ؛ request.setAttribute ("id" ، id) ؛ request.getRequestDispatcher ("/bbs.jsp"). إلى الأمام (طلب ، استجابة) ؛ } dopost void المحمي (طلب httpservletrequest ، استجابة httpservletresponse) يلقي servletexception ، ioException {doget (request ، response) ؛ }}قم بإنشاء ملف BBS.JSP في دليل جذر التطبيق ، مع المحتويات:
<٪@ page contentType = "text/html ؛ charset = utf-8" ٪> <٪ out.println (request.getAttribute ("id")) ؛ ٪>لاحظ أن العديد من الأشخاص يفشلون في تمرير المعلمات لأنهم يسمون Dopost في طريقة DOGE. لا تتصل بـ Dopost في طريقة DOGE هنا.