当前位置 : 主页 > 编程语言 > java >

可以覆盖jsp_service()方法吗?

来源:互联网 收集:自由互联 发布时间:2021-06-25
我知道jsp_service()方法不能被覆盖,但是我的一个朋友说我们可以在JSP中使用scriptlet来覆盖方法,并且可以在该方法中做任何我们需要的事情. 任何人都可以解释这是真的吗? 不是不是真的
我知道jsp_service()方法不能被覆盖,但是我的一个朋友说我们可以在JSP中使用scriptlet来覆盖方法,并且可以在该方法中做任何我们需要的事情.

任何人都可以解释这是真的吗?

不是不是真的.

拿一个示例JSP:

<%@page contentType="text/html" pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
        <title>JSP Page</title>
    </head>
    <body>
        <h1>Hello World!</h1>
    </body>
</html>

如果检查生成的此Servlet的Servlet.你会发现包含HTML代码的_jspService方法为out.write

为什么?

因为我们在JSP中编写的代码将被放置在生成的servlet类的_jspService()中(来自JSP).means _jspService()已经被我们称赞.如果我们试图覆盖_jspService(),它将给出编译错误关于方法_jspService()已经定义.

阅读更多why jspService() cannot be overridden?

网友评论