gpt4 book ai didi

java - jsp页面中这两种方法的区别

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

有什么区别:

this.log("log message"); 

((HttpServlet)page).log("anothermessage");

最佳答案

如果您查看从 JSP 生成的 Servlet,您会发现 thispage 都是相同的。这里的 pageimplicit object在 JSP 中。

从 JSP 生成 Servlet 代码:

public void _jspService(HttpServletRequest request, HttpServletResponse response)
throws java.io.IOException, ServletException {

PageContext pageContext = null;
HttpSession session = null;
ServletContext application = null;
ServletConfig config = null;
JspWriter out = null;
Object page = this; // page and this are same
JspWriter _jspx_out = null;
PageContext _jspx_page_context = null;
...
<小时/>

log() 方法在 GenericServlet 中定义。下面是从 JSP 生成 Servlet 的 tomcat(apache) 具体实现:

javax.servlet.GenericServlet
extended byjavax.servlet.http.HttpServlet
extended byorg.apache.jasper.runtime.HttpJspBase

因此 this.log("log message") 相当于 ((HttpServlet)page).log("anothermessage")

关于java - jsp页面中这两种方法的区别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26257776/

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