剖析JSP与XML的交互编程技巧上

2016-02-19 15:11 4 1 收藏

下面是个剖析JSP与XML的交互编程技巧上教程,撑握了其技术要点,学起来就简单多了。赶紧跟着图老师小编一起来看看吧!

【 tulaoshi.com - Web开发 】

  JavaServer Pages ( JSP)和XML是Sun的J2EE的两个至关紧要的组件。 JSP是用于创建应用程序服务器端程序的有效工具,而客户可以是一个浏览器,一个设备或其它的应用程序。 你可以使用XML描述数据并在联系服务器与系统的其余部分之间传递。 如果你仔细考虑Web服务的抽象概念的话,JSP可以被认为是实现技术而XML则是数据封装和消息传送技术。 JSP页面可以通过三种方式使用XML:直接使用XML文件,使用JavaBeans来执行XML处理或者通过标记库使用XML。

  一、直接使用XML

  我们可以在JSP页面中直接使用XML,这要分为三类:

  1. JSP可以读取XML文件并且基于这些数据执行动作。例如:一应用程序可以读取具有某些特定结构的数据的XML文件。

  2. JSP可以创建XML文件以发送数据到客户程序或其它的应用程序。 JSP可以转换XML文件,这个变换可以是交给XSLT处理,由JSP作为控制器,或者通过非XSLT解决方案来完成。 在这两种情况下,JSP的作用都是读取XML文件,转换它并生成一个输出。

  因为JSP包含内嵌的Java程序,所以它可以直接地调用一个分析程序来读/写xml数据。 这是非常不合理的方法,因为数据和代码逻辑并不能很好的被分离开。 另外,这样的程序也很难读得懂。 所以,下面我将介绍第二方法:使用JavaBeans。

  二、使用JavaBeans

(本文来源于图老师网站,更多请访问http://www.tulaoshi.com/webkaifa/)

  JSP可以通过 jsp:usebean标记与JavaBeans紧密的整合起来。 下面的程序片段示范了如何使用在JSP页面中的一个JavaBean来设置并获取属性。

   jsp:useBean id="cb" scope="session" class="xmlrep.Customer" /
   jsp:setProperty name="cb" property="id" value="45" /
   B First Name is: /B
   %=cb.getFname() %
   p
   B Last Name is: . /B
   %= cb.getLname() %

(本文来源于图老师网站,更多请访问http://www.tulaoshi.com/webkaifa/)

  JSP与JavaBeans整合的特征就是可以自动把超文本标志语言的表单元素翻译成JavaBean属性。 如果有一个HTML表单并且想让它向JavaBean提交表单内容,你可以写下面的代码:

   jsp:setProperty name="cb" property="*" /

  name属性包含JSP页面已经引用Bean的值。 前面 jsp:useBean标记设置名称为" cb "。 与设置单独的Bean属性不同,你可以使用星号来标志"全部的"属性。 JSP页面自动地映射HTML表单值为同名的Bean属性。 如果你读取每个HTML表单元素,然后调用相应属性的Bean设置方法,那么结果也将是相同的。

  可以看到,类XML的标记允许JSP页面访问JavaBeans。 我们通过尽可能多的把封装的代码转变成可重用组件(JavaBeans),就可以把JSP页面中代码优化到最小的程度。 你可以使用通用的语法分析程序,像Xerces或者JAXPI,在单独的JavaBeans里与XML文件交互作用--并且你可以在不改动JSP页面的情况下改变分析程序。 此外,Beans还可以使用XSLT来执行XML文件的转换。

  使用JSP和JavaBeans来完成的这些抽象的动作比直接在JSP页面中插入原始的Java程序要好得多,但是你仍然需要熟悉Java程序,以便随时改变JSP页面。 应用程序的一致性与条理性依靠JavaBeans合作创建一个统一的输出结果的好坏程度。 例如,Bean中的缺陷可能会造成整个XML输出无效。 依靠Beans指定资源的方法,可能同时带来执行性能的问题

来源:http://www.tulaoshi.com/n/20160219/1609125.html

延伸阅读
标签: Web开发
北京邮电大学 张剑 XML的局限性 目前,许多Web网站的内容数据都存放在数据库或数据文件中。对于Web程序开发人员来说,如果要想把有用的信息从数据库中提取出来,传统的方法是在服务器端编写脚本程序(如VBScript、JavaScript、CGI、ASP、Perl等等),通过对数据库执行SQL查询得到相关记录,然后把查询结果组织成HTML页面返回给客户端,...
标签: Web开发
一、在JSP中访问JS返回的值: 问题: 代码如下: script language="javascript" !-- var str="123"; % String aa; % -- /script 怎么让这个JSP里的aa获得JAVASCRIPT中str的值???? 详细一点就是: 代码如下: script language="javascript" function returnValue(){ var myform=document.form1; var str=myform.text1.value; ...
  摘 要 本文较为详细地对Linux的Samba服务进行了剖析,内容涉及Samba的核心、语法、组成,以及 Samba的启动与停止。同时给出了定制Samba的几个技巧。 关键词 Samba,剖析,定制 1 引 言 Linux是一个优秀的网络操作系统,它可与多种网络集成。Linux系统的稳定性、可靠性受到了广大用户 的欢迎,在小型网...
标签: Web开发
XML 是标准扩展语言,是未来Web编程的标准,asp 是现在广为流传的web编程语言之一,能不能让他们两个联合起来发挥作用呢?豆腐在这里给大家提供一个很简单的例子关于XML和XSL限于篇幅和知识水平豆腐就不在这里献丑了下面首先来说说几个需要用到的文件的内容。 testXsl.xsl: ?xml version='1.0'? xsl:stylesheet xmlns:xsl="http...
前一段时间,我用java开发一个安装程序,适用于tomcat mysql构建的web环境。在开发的过程中遇到与写注册表,注册系统服务等问题用java本身很难解决,于是我想到用JNI。C与delphi两者开发JNI,我是从delphi转到java上来的,我选择了delphi。 用delphi开发JNI,首先从http://delphi-jedi.org 下载JNI.pas,把它加入到工程中就可以开发J...

经验教程

944

收藏

46
微博分享 QQ分享 QQ空间 手机页面 收藏网站 回到头部