このコードスニペットはCustomerController
サーブレットのものです。RequestDispatcherは、JSPにリダイレクトするのではなく、servetのURLに出力を出力します
@WebServlet("/CustomerController")
/*
.
.
.
*/
if(request.getParameter("operation").equalsIgnoreCase("search-customer")) {
CustomerDAO customerDAO = new CustomerDAO();
Customer customer = customerDAO.searchCustomer(Integer.parseInt(request.getParameter("customer_id")));
request.setAttribute("Customer-Result", customer);
RequestDispatcher requestDispatcher;
requestDispatcher = request.getRequestDispatcher("/search-results.jsp");
requestDispatcher.forward(request, response);
}
代わりに、検索結果を印刷するようにsearch-results.jsp
にリダイレクトする、結果はサーブレットの(CustomerController)URL自体に印刷されています。
画像を参照してください。
search-results.jsp
<%@page import="com.servlet.Customer"%>
<!DOCTYPE html>
<html>
<body>
Customer Found :
<%
Customer customer = (Customer) request.getAttribute("Customer-Result");
out.println(customer.getCustomer_name());
%>
</body>
</html>
あなたはout.println(customer.getCustomer_name())を持っています。これは印刷されています – SpringLearner
クライアント側のリダイレクトで 'sendRedirect'を使用する場合、これは' requestDispatcher.forward'の意図した動作です。 – awd
@awadheshv - 結果をURL「search-results.jsp」に表示するにはどうすればよいですか? –