将值从 servlet 传递到 html [重复]
Posted
技术标签:
【中文标题】将值从 servlet 传递到 html [重复]【英文标题】:Passing value from servlet to html [duplicate] 【发布时间】:2012-05-22 14:54:55 【问题描述】:我有一个 servlet,它处理来自网络的一些内容并生成一个字符串值。我需要在表格标签内的 html 页面中显示此字符串值。
如何使用 setAttribute 方法和 getrequestdispatcher 方法从 servlet 传递这个字符串值?
谢谢 阿布舍克S
【问题讨论】:
【参考方案1】:您可以使用请求转发并将数据设置为请求中的属性,然后在 JSP 上渲染这些数据以生成 HTML
,您可以将数据从 servlet 传递到 JSP(不是 HTML)见
Servlet JSP【讨论】:
【参考方案2】:在您的Servlet
中,将数据设置为request
中的属性:
RequestDispatcher dispatcher = request.getRequestDispatcher("yourJspPage.jsp");
request.setAttribute("Name", "Temp"); // set your String value in the attribute
dispatcher.forward( request, response );
在您的jsp
页面中,访问request
属性,如下所示:
<table>
<tr>
<td><%=request.getAttribute("Name")%></td>
</tr>
</table>
希望这会有所帮助!
【讨论】:
【参考方案3】:首先创建一个PrintWriter
对象,它将在 HTML 页面上生成输出。
这里response
是来自doGet
或doPost
方法的HttpServletResponse
对象。
response.setContentType("text/html");
PrintWriter out = response.getWriter();
out.println("<html-code>")
如果你想使用表格标签,那么你可以这样做
out.println("<html><body><table>...your code...</table></body></html>");
结果将显示在 HTML 页面上。
【讨论】:
【参考方案4】:假设您使用 jquery 从 html 发送 ajax get 请求。 这是在 html 脚本中
$.get('HelloServlet', a:'abc',b:'abc', function (data)
alert(data);
);
Servlet 中的这段代码
String str = "abc";
PrintWriter out = response.getWriter();
out.write(str);
当您的 servlet 成功执行时,您会在警报“数据”变量中获得“str”变量值。
【讨论】:
【参考方案5】:您可以通过将 servlet 值作为 HTML-javascript-content 传递,然后在脚本标记中访问该内容来做到这一点。
你可以试试这个:在Servlet方法中
PrintWriter out = response.getWriter(); out.print("var xyz = 20;");
在 HTML 页面中 内部脚本标签:
var abc = xyz;
但是您必须在 HTML 页面中执行 servlet。 在 tomcat 中,如果您有 servlet 映射,只需键入:
"
【讨论】:
以上是关于将值从 servlet 传递到 html [重复]的主要内容,如果未能解决你的问题,请参考以下文章
使用 <a href> 将值从 jsp 传递到 servlet