【问题标题】:Anchor send value to Mapped Servlet - pass parameterAnchor 将值发送到 Mapped Servlet - 传递参数
【发布时间】:2013-02-26 00:42:25
【问题描述】:

我有一个包含几类书籍的菜单。

当我点击一个菜单项时,我想让一个 servlet 查询数据库并返回结果。

我不想重复代码,所以最好只使用一个 servlet,但不知何故让 servlet 识别菜单中的哪个链接被单击并执行适当的操作。

是提交表单的唯一方法吗?

另外,我应该提一下,尽管这种做法很糟糕,但我将针对结果设定不同的框架。

【问题讨论】:

标签: html forms servlets parameter-passing


【解决方案1】:

不,您不需要提交表单。参数通过使用查询字符串的链接传递:

<a href="/books?category=novels">Novels</a>
<a href="/books?category=sf">Science Fiction</a>
...    

【讨论】:

    【解决方案2】:

    这篇文章可能是旧的。但这是我的答案。
    您可以在jsp页面中创建这样的链接。

     <a href="${pageContext.request.contextPath}/new">Add New Book</a>
    
     <a href="${pageContext.request.contextPath}/list">List All Books</a>
    

    然后像这样调用你的控制器。

        protected void doGet(HttpServletRequest request, HttpServletResponse response)
                throws ServletException, IOException {
            String action = request.getServletContext().getContextPath()+request.getServletPath();
    
            try {
                switch (action) {
                case "/new":
                    showNewForm(request, response);
                    break;
                case "/insert":
                    insertBook(request, response);
                    break;
                case "/delete":
                    deleteBook(request, response);
                    break;
                case "/edit":
                    showEditForm(request, response);
                    break;
                case "/update":
                    updateBook(request, response);
                    break;
                default:
                    listBook(request, response);
                    break;
                }
            } catch (SQLException ex) {
                throw new ServletException(ex);
            }
        }
    

    这适用于作为启动页面的 servlet。
    您可以根据servlet 的url pattern 更新href 属性。

    【讨论】:

      猜你喜欢
      • 2014-11-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-01-06
      相关资源
      最近更新 更多