gpt4 book ai didi

java - 对 Java Servlet 和 HTML 感到困惑

转载 作者:行者123 更新时间:2023-12-01 19:19:14 25 4
gpt4 key购买 nike

我明天的作业之一是使用 Java EE 搜索和添加条目。如果搜索不存在,添加项目选项将显示如下:

据说,当Stock ID不存在时,它会被转移到StockID的添加项目文本字段中。但我不知道该怎么做。我的代码如下:

Servlet:

public void doGet(HttpServletRequest request,
HttpServletResponse response)
throws ServletException, IOException {

response.setContentType("text/html");
PrintWriter out = response.getWriter();
Item item = (Item) request.getAttribute("invenItem");
if (item != null) {
out.println("<html><title>Inventory Item</title>");
out.println("<body><h1>Inventory Item Details:</h1>");
out.println("Stock ID : " + item.getStockID() + "<br/>");
out.println("Name : " + item.getItemName() + "<br/>");
out.println("Unit Price: " + item.getUnitPrice() + "<br/>");
out.println("On Stock : " + item.getOnStock() + "<br/>");
out.println("</body>");
out.println("</html>");
} else {
RequestDispatcher rd = request.getRequestDispatcher("/DataForm.html");
rd.include(request, response);
out.println("Sorry Item not found..");
rd = request.getRequestDispatcher("AddEntry.html");
rd.include(request, response);
}
}
}

HTML:

<html>
<head>
<title>Add Entry</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
</head>
<body>
<h2>Add Item:</h2>
Stock ID: <input type ="text" name ="stockId" value="???"> <br> <--how to get it?
Item Name: <input type ="text" name ="name"> <br>
Unit Price: <input type ="text" name ="unitPrice"> <br>
On Stock : <input type ="text" name ="stock"> <br><br>
<input type ="submit" value ="Add Item">
</body>
</html>

最佳答案

你处理这个问题的方式是错误的。 HTML 属于 JSP 文件,而不是 Servlet 类。另外,EL ${} 根本不在纯 HTML 文件中运行,而仅在 JSP 文件中运行。将 .html 文件重命名为 .jsp。这样,即使您仍然存在 XSS 攻击漏洞,${param.id} 之类的 EL 也将起作用。

另请参阅:

(请阅读它们,它们包含 hello world 示例,这些示例应该会点亮您的头脑)

关于java - 对 Java Servlet 和 HTML 感到困惑,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5156438/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com