我有两个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