抓取jsp网页源代码(为Development学习,这个软件包提供了大量可供修改的示例)

优采云 发布时间: 2022-02-15 22:13

  抓取jsp网页源代码(为Development学习,这个软件包提供了大量可供修改的示例)

  在 Sun 正式发布 JSP(JavaServer Pages)之后,这种新的 Web 应用程序开发技术非常流行

  很快就引起了人们的注意。JSP 为创建高度动态的 Web 应用程序提供了独特的开发环境。

  据Sun介绍,JSP可以适配市面上的8个包括Apache WebServer、IIS4.0

  5%的服务器产品。即使你对 ASP “深爱”,我们认为仍然值得关注 JSP 的演变

  必要的。

  JSP和ASP的简单比较

  JSP 与微软的 ASP 技术非常相似。两者都提供在 HTML 代码中混合某种程序

  程序代码,由语言引擎解释和执行程序代码的能力。在 ASP 或 JSP 环境中,HTML 代码主要是

  它负责描述信息的显示风格,程序代码用于描述处理逻辑。普通的HTML页面只依赖

  根据 Web 服务器,ASP 和 JSP 页面需要额外的语言引擎来解析和执行程序代码。程序

  代码执行的结果被重新嵌入到 HTML 代码中,并一起发送到浏览器。ASP 和 JSP

  它是一种面向 Web 服务器的技术,客户端浏览器不需要任何额外的软件支持。

  ASP的编程语言是VBScript等脚本语言,JSP用的是Java,是两者

  最明显的区别。另外,ASP和JSP还有一个更本质的区别:两种语言引擎使用完全不同

  嵌入在页面中的程序代码以同样的方式处理。在 ASP 下,VBScript 代码由 ASP 引擎解释和执行。

  线; JSP下,代码被编译成servlet,由Java虚拟机执行,这个编译操作只是

  发生在 JSP 页面的第一个请求上。

  二次运行环境

  Sun 的 JSP 主页位于,

  您还可以从这里下载 JSP 规范,该规范定义了供应商在创建 JSP 引擎时必须遵循的内容

  一些规则。

  执行 JSP 代码需要在服务器上安装 JSP 引擎。这里我们使用 Sun 的 JavaS

  erver Web 开发工具包 (JSWDK)。为了便于学习,此软件包提供了许多

  修改示例。安装 JSWDK 后,只需执行 startserver 命令即可启动服务器。在默认配置中

  设置服务器*敏*感*词* 8080 端口,使用 :8080 打开默认页面。

  在运行 JSP 示例页面之前,请注意 JSWDK 的安装目录,尤其是“work”子目录

  目录的内容。执行示例页面时,您可以在此处看到 JSP 页面如何转换为 Java 源文件

  ,然后编译成一个类文件(即Servlet)。JSWDK包中的示例页面分为两类

  ,它们可以是 JSP 文件,也可以是收录由 JSP 代码编写的表单的 HTML 文件

  处理。与 ASP 一样,JSP 中的 Java 代码在服务器端执行。因此,在浏览器中使用

  “查看源代码”菜单看不到 JSP 源代码,只能看到生成的 HTML 代码。所有的例子

  源代码通过单独的“示例”页面提供。

  三个 JSP 页面示例

  下面我们分析一个简单的JSP页面。您可以在 JSWDK 的示例目录中创建另一个文件

  这个文件存放在外面的一个目录下,文件名可以是任意的,但扩展名必须是.jsp。从下面的代码中清除

  从列表中可以看出,除了比普通 HTML 页面多一些 Java 代码外,JSP 页*敏*感*词*有基本的相似之处。

  相同的结构。Java 代码通过 <% 和 %> 符号添加到 HTML 代码中,它的主要功能

  就是生成并显示一个从0到9的字符串。这个字符串的前后都是一些通过HTM

  L 码输出的文本。

  <HTML>

  <HEAD><TITLE>JSP 页面</TITLE></HEAD>

  <身体>

  < %@ 页面语言="java" %>

  <%! 字符串 str="0"; %>

  < % for (int i=1; i < 10; i++) {

  str = str + i;

  } %>

  在 JSP 输出之前。

  <P>

  < %= 字符串 %>

  <P>

  JSP 输出后。

  </正文>

  </HTML>

  这个JSP页面可以分成几个部分进行分析。

  第一个是JSP 指令。它描述了页面的基本信息,例如使用的语言,是否保持会话状态,

  是否使用缓冲等。JSP 指令以 < %@ 开头,以 %> 结尾。在本例中,指令“< %@ page

  language=”java” %> ” 简单定义了这个例子使用Java语言(目前在JSP规范中

  Java 是唯一受支持的语言)。

  接下来是 JSP 声明。JSP 声明可以被认为是在类级别定义变量和方法的地方。Ĵ

  SP 声明以 <%! 并以 %> 结尾。如本例中“ < %! String str="0"; %> ” 定义

  一个字符串变量。每个声明后面必须跟一个分号,就像在普通的 Java 类声明中一样

  成员变量。

  <%和%>之间的代码块是描述JSP页面处理逻辑的Java代码,例如本例中的f

  或如图所示循环。

  最后,< %= 和 %> 之间的代码称为 JSP 表达式,如本例中的“< %= str %>”

  显示。JSP 表达式提供了一种将 JSP 生成的值嵌入到 HTML 页面中的简单方法。

  二、会话状态管理

  作者:仙人掌工作室

  会话状态维护是Web 应用程序开发人员必须面对的问题。有多种方法可以解决这个问题

  诸如使用 cookie、隐藏表单输入字段或将状态信息直接附加到 URL 等问题。熟

  servlet 提供了一个会话对象,该对象在多个请求中持续存在,允许用户存储和

  获取会话状态信息。JSP 在 servlet 中也支持这个概念。

  请参阅 Sun 的 JSP 指南以了解有关隐式对象的更多信息(隐式地,这些

  可以直接引用对象,不需要显式声明,也不需要专门的代码来创建它们的实例)。例如请求

  uest 对象,它是 HttpServletRequest 的子类。此对象收录有关当前浏览器的所有信息

  请求的信息,包括 cookie、HTML 表单变量等。session 对象也是这样一个隐含的

  目的。该对象在第一个 JSP 页面加载时自动创建,并与请求对象相关联。

  与 ASP 中的会话对象类似,JSP 中的会话对象对于那些希望完成一个

  事务的应用非常有用。

  为了说明session对象的具体应用,接下来我们用三个页面来模拟一个多页面的Web

  应用。第一个页面( q1.html )只收录一个 HTML 表单,它询问用户的姓名,代码如下

  向下:

  <HTML>

  <身体>

  <FORM METHOD=POST ACTION="q2.jsp">

  请输入你的名字:

  <输入类型=文本>

  <输入类型=提交值=“提交”>

  </表格>

  </正文>

  </HTML>

  第二个页面是一个 JSP 页面( q2.jsp ),它通过请求对象提取 q1.html

  表单中的name值,将其存储为name变量,然后将name值保存到会话中

  在对象中。会话对象是名称/值对的集合,其中名称/值对中的名称为 "

  thename",其值为name变量的值。由于会话对象在会话期间始终有效,

  因此,此处保存的变量对后续页面也有效。q2.jsp的附加任务是问第二个问题

  . 这是它的代码:

  <HTML>

  <身体>

  < %@ 页面语言="java" %>

  <%! 细绳; %>

  < %

  name = request.getParameter("thename");

  session.putValue("名称", name);

  %>

  你的名字是:< %= name %>

  <p>

  <FORM METHOD=POST ACTION="q3.jsp">

  你喜欢吃什么?

  <输入类型=文本>

  <P>

  <输入类型=提交值=“提交”>

  </表格>

  </正文>

  </HTML>

  第三个页面也是一个 JSP 页面( q3.jsp ),其主要任务是显示问答的结果。它来自 s

  session对象提取了name的值并显示出来,证明虽然在第一页输入了值,

  会话对象被保留。q3.jsp的另一个任务是在第二页提取用户输入

  并显示它:

  <HTML>

  <身体>

  < %@ 页面语言="java" %>

  <%! 字符串食物=""; %>

  < %

  food = request.getParameter("food");

  String name = (String) session.getValue("thename");

  %>

  你的名字是:< %= name %>

  <P>

  你喜欢吃:< %= food %>

  </正文>

  </HTML>

  三、对 JavaBean 组件的引用

  作者:仙人掌工作室

  JavaBean 是基于 Java 的软件组件。用于在 Web 应用程序中集成 JavaBea 的 JSP

  n 组件提供完整的支持。这种支持不仅减少了开发时间(可以直接利用经过测试和信任的

  任何现有的组件,避免重复开发),也为 JSP 应用程序带来了更多的可扩展性。JavaBeans

  组件可以用来执行复杂的计算任务,或者负责与数据库交互、数据提取等,如果我们

  共有三个JavaBean,分别具有显示新闻、股票价格和天气状况的功能。

  具有全部三个功能的网页只需要实例化这三个bean,并使用HTML表格依次指定它们。

  点它。

  为了说明 JavaBeans 在 JSP 环境中的应用,我们创建了一个名为 TaxRate 的 Bean

  . 它有两个属性,Product 和 Rate。两种set方法用于设置

  设置这两个属性,使用两个get方法提取这两个属性。在实际应用中,这个Bean一般是

  应从数据库中提取税率值,这里我们简化了过程以允许任意税率。下面是这个

  豆代码清单:

  包裹税;

  公共课税率 {

  字符串产品;

  双倍率;

  公共税率(){

  this.Product = "A001";

  this.Rate = 5;

  }

  公共无效集产品(字符串产品名称){

  this.Product = 产品名称;

  }

  公共字符串 getProduct() {

  返回(this.Product);

  }

  公共无效setRate(双倍率值){

  this.Rate = rateValue;

  }

  公共双getRate(){

  返回(this.Rate);

  }

  }

  <jsp:useBean> 标记用于在 JSP 页面中应用上述 bean。取决于具体用途

  根据 JSP 引擎,配置 bean 的位置和方式的方法可能略有不同。本文将

  Bean的.class文件放在c:/jswdk-1.0/examples/WEB-INF/jsp/beans/tax目录下,

  这里的 tax 是一个专门用来存放 Bean 的目录。这是应用上述 bean 的示例页面:

  <HTML>

  <身体>

  < %@ 页面语言="java" %>

  <jsp:useBean scope="application" />

  < % taxbean.setProduct("A002");

  taxbean.setRate(17);

  %>

  方法一:<p>

  产品:< %= taxbean.getProduct() %> < br>

  税率:< %= taxbean.getRate() %>

  <p>

  < % taxbean.setProduct("A003");

  taxbean.setRate(3);

  %>

  <b>使用方法二:</b> <p>

  产品:< jsp:getProperty property="Product" />

  <br>

  速率:< jsp:getProperty property="Rate" />

  </正文>

  </HTML>

  <jsp:useBean> 标记中定义了几个属性,其中 id 是整个 JSP 页面中的 Bea

  n的标识,scope属性定义了bean的生命周期,class属性描述了bean的类

  文件(以包名开头)。

  这个 JSP 页面不仅使用 Bean 的 set 和 get 方法来设置和提取属性值,还使用

  使用 <jsp:getProperty> 标记提供了提取 bean 属性值的第二种方法。< jsp:getPr

  operty> 中的 name 属性是 <jsp:useBean> 中定义的 bean 的 id,及其属性

  y 属性指定目标属性的名称。

  事实证明,Java servlet 是开发 Web 应用程序的理想框架。JSP 到 Servlet

  在技​​术的基础上,它在许多方面都得到了改进。JSP 页面看起来像普通的 HTML 页面,但它允许嵌入

  在这方面,它与 ASP 技术非常相似。利用跨平台运行的 JavaBean 组件

  , JSP 为分离处理逻辑和显示样式提供了出色的解决方案。JSP必将成为ASP技术的核心

  强大的竞争对手。

  嘿嘿……

  上一篇:解决Can not find the tag library descriptor for "core"的问题

0 个评论

要回复文章请先登录注册


官方客服QQ群

微信人工客服

QQ人工客服


线