java - 如何用Servlet初始化JSP页面?

标签 java jsp servlets

我的 JSP 页面上有一个下拉菜单,我想在页面完成加载之前填充该菜单。

我尝试过类似的方法

protected void doGet(HttpServletRequest request, HttpServletResponse response)
        throws ServletException, IOException {
    HttpSession session = request.getSession();
    if (session.getAttribute("someArray") == null) {
        session.setAttribute("someArray", SomeEnum.values());
        doGet(request, response);
    } else { // ... // }

但这仅在我提交页面后填充下拉列表。我尝试了 get 和 post 方法,但无论哪种方式都行不通。如何在加载时自动调用 Servlet.doGet() 并设置变量(如果未设置)? 或者如何在页面加载之前设置变量?

最佳答案

您需要将 servlet 与加载页面的 url 进行映射(例如 index.jsp)。现在,实现填充 Servlet 内的 dropdown 选项所需的业务逻辑,然后执行 RequestDispather.forward 并将您的 index.html 放入其中。 jsp.

现在,您已获得加载 index.jsp 之前的值

关于java - 如何用Servlet初始化JSP页面?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49892263/

相关文章:

JavaScript 框架和 Java EE

java - session 无法从之前的 session 中找到变量

java - 如何获取购物车中的多个商品

servlets - 检测空白 HTML 表单输入值

java - 通过handleValidationErrors()调用在Stripes中显示验证错误

java - 我如何在 Tomcat Servlet 中打印一些东西, hibernate 3 秒然后转发到另一个 servlet?

java - 如何使用 java 11 运行 scala repl?

java - 如何将时间戳转换为日期

java - Aspose xlsx和pptx文件转换异常

web-services - 在浏览器刷新时编译 JSP 和 Java - Tomcat