抓取jsp网页源代码(java基础知识:java服务器页面内部可以书写代码,)

优采云 发布时间: 2022-01-24 08:12

  抓取jsp网页源代码(java基础知识:java服务器页面内部可以书写代码,)

  JSP:Java 服务页面:Java 服务器页面

  java代码可以内部编写,用于处理一些Java前后端交互数据。它主要用于显示数据。不建议在JSP页面中编写大量代码;

  特点:

  如何执行 JSP 动态请求被分发到 Web 容器(Web 服务器)。容器将执行字节码文件,即 .class 文件。 Servlet 是 java 类,可以直接编译成类文件。

  问题:如何将jsp编译成class文件。

  按照学java的思路,类文件是由JVM从Java文件编译成类文件的。然后,将 Jsp 文件编译成类文件。也是java编译的吗?

  我们随意打开一个项目,找到idea下的项目名,找到对应的自动生成的index.jsp

  路径是:

  C:\用户\用户名\.IntelliJidea2018.1\system\tomcat\项目名\work\Catalina\localhost\项目发布名\org\apache\jsp

用户名:自己用户名(我的电脑名为fleeting)

.IntelliJidea2018.1:idea安装版本不同,后面的数字可能会略微有所差异

项目名:自己当初创建的项目名

项目发布名:当时在配置tomcat时,填写的项目发布名

  举一个我的路径的例子

  C:\Users\fleeting\.IntelliJIdea2018.1\system\tomcat\Unnamed_JavaWeb_3\work\Catalina\localhost\demo01\org\apache\jsp

  这是我在自己的一个项目下打开的jsp文件

  

  可以看到文件中有index.jsp,会先转换成java文件,再编译成class文件

  打开这个类

  

  可以看到它继承了 HttpJspBase 类。我们可以再找这个类,会发现它继承了HttpServlet类。所以,我们可以知道JSP也是一个servlet,那为什么它呈现一个页面,写的和HTMl差不多呢?格式呢?继续阅读:

  

  看到这个感觉很眼熟。这不是 index.jsp 页面上的代码吗?看到这里,我们知道它是使用out对象输出到浏览器的。看一下out对象所在的方法:_jspService,是一个JSP文件,解析后输出到前端页面

  

  在这个方法中,我们可以看到定义了一些属性:

  

  //JSP内置对象:

pageContext 作用域:

application = pageContext.getServletContext(); 应用

session = pageContext.getSession(); 会话

request = 请求

page = this; 页面

  看到我们经常在servlet中看到的所有类,我们更加确定jsp是一个servlet。前面提到的out对象其实是一个JspWriter对象。有种看到response.getWriter()的感觉……

  p>

  

  这里竟然还有中文解释……

  可以看到jsp类似于servlet,使用get、post方法完成请求和响应……

  接下来我们来看看jsp中添加的java代码转换成java文件后的样子...

  -------------------------------------------- 华丽的分隔符 - -------------------------------------------------- ------ --------

<p>

$Title$

暮凌寒雪

a:

0 个评论

要回复文章请先登录注册


官方客服QQ群

微信人工客服

QQ人工客服


线