我有兩個servlet。 第一個(的doGet)顯示我的樣式與第二(的doPost)處理表單兩個servlets之間的數據傳輸
這是我的第一個servlet
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException
{
Nodes nodes = nodes_dao.start(request);
int id = nodes.getId_node();
request.setAttribute("nodes", nodes);
request.setAttribute("id", id);
request.getRequestDispatcher(VUE).forward(request, response);
}
,這裏是我的第二個servlet
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException
{
String question = null;
String result = null;
question = request.getParameter("question");
result = request.getParameter("result");
Node_dao dao = new Node_dao();
try
{
dao.insert_result(result);
int left_id = dao.select_left_id(result);
dao.insert_question(question, left_id);
}
例如,我如何在第二個servlet中獲取第一個servlet的id?
感謝
您可以使用會話,請求或servlet上下文共享,請參閱:http://stackoverflow.com/questions/123657/how-can-i-share-a-variable-or-object-between-two-或更多的servlets –
把它放在一個隱藏的輸入字段中?它不像你直接從servlet A到servlet B,在兩者之間有一個提交表單數據的客戶端(瀏覽器)。至少這就是我的想法,它非常模糊你發佈的內容,因爲在那裏也有一個前鋒... – Gimby
爲什麼有人會建議他在添加一個隱藏的輸入時明確將id添加到請求屬性中,然後轉發?上面的代碼中甚至沒有HTML表單。 – developerwjk