Kelas HttpServletRequest memiliki metode getAttribute() dan metode getParameter() Kedua metode tersebut memiliki perbedaan berikut:
1. Kelas HttpServletRequest memiliki metode setAttribute() tetapi tidak memiliki metode setParameter();
2. Ketika ada hubungan tautan antara dua komponen Web, komponen yang ditautkan memperoleh parameter permintaan melalui metode getParameter();
Misalnya, dengan asumsi ada hubungan tautan antara selamat datang.jsp dan autentikasi.jsp, ada kode berikut di selamat datang.jsp:
Copy kode kodenya sebagai berikut:
<a href="authenticate.jsp?username=qianyunlai.com">authenticate.jsp </a>
//atau:
<form name="form1" method="post" action="authenticate.jsp">
Silakan masukkan nama pengguna:<input type="text" name="username">
<input type="kirim" nama="Kirim" value="Kirim">
</bentuk>
Dapatkan nama pengguna parameter permintaan melalui metode request.getParameter("nama pengguna") di authenticate.jsp:
<% String nama pengguna=permintaan.getParameter("nama pengguna" %>
3. Ketika ada hubungan penerusan antara dua komponen Web, komponen target penerusan berbagi data dalam rentang permintaan dengan komponen sumber penerusan melalui metode getAttribute().
Diasumsikan ada hubungan penerusan antara authenticate.jsp dan hello.jsp. authenticate.jsp berharap dapat meneruskan nama pengguna saat ini ke hello.jsp. Bagaimana cara meneruskan data ini? Pertama panggil metode setAttribute() di authenticate.jsp:
Copy kode kodenya sebagai berikut:
<%
String nama pengguna=permintaan.getParameter("nama pengguna");
request.setAttribute("nama pengguna",nama pengguna);
%>
<jsp:halaman depan="halo.jsp" />
Dapatkan nama pengguna melalui metode getAttribute() di hello.jsp:
Copy kode kodenya sebagai berikut:
<% String nama pengguna=(String)request.getAttribute("nama pengguna" %>
Halo: <%=nama pengguna %>
4. request.getAttribute mengembalikan Objek, dan request.getParameter mengembalikan String.