1 configure

configure为xml的根结点,class指定所配置的对象的类,这个configure会创建一个该类的对象,然后根据该xml对其进行配置。id用来对该对象进行标识,在整个jetty中具有唯一性,相同id的xml configure文件配置的是同一个对象。

2 set

<Set name=xxx type=xxx class=xxx>value</Set>

无论value处是什么元素,其返回值都作为setXxx()函数的参数,即setXxx(value)。

name用来确定该setter的名字,setXxx。

type用来指示value的类型,一般情况下可以省略。

如果有class,那么这就是该类的一个static的调用。

3 get

<Get name=xxx class=xxx>operation</Get>

name用来确定该getter的名字,getXxx。

如果有class,那么也是调用该类的一个static的getter。

Get会返回一个对象A,然后再调用该对象A的operation,可以是set、call、get、put等。

4 调用set、get、put、call的对象

是离它们最近的标签所决定的对象在调用它们,比如如果set在<Get></Get>这个范围内的话,那么这个set就是由getXxx方法返回的对象调用的。类似,如果set是在<Configure></Configure>这个范围的话,那么这个setXxx方法就是由根对象调用的。

5 put

调用put的对象必须要实现Map接口,也就是说,调用put的对象必须是一个key-value pair的map对象。

<Put name=xxx type=xxx>value</Put>

其中name/value就是key-value pair,而type用来指定value的类型。

6 call

<Call name=xxx>

<Arg>value<Arg/>

各种其它的标签

</Call>

在当前scope的对象的继承上调用xxx(value)函数,参数是value,由Arg指定,然后返回一个对象。然后调用这个对象的由“各种其它的标签”指定的函数。

7 <Arg>

指定函数的参数。

8 <New>

<New class=xxx>

<Arg>value</Arg>

各种其它标签

</New>

创建类xxx的新的对象,构造函数的参数为value,创建新的对象后,调用该对象的“各种其它标签”指定的方法。

9 <Ref>

<Ref refid=xxx></Ref>,返回id xxx指定的对象的引用,用来作为各种value值。

<Ref refid=xxx>

各种其它标签

</Ref>

这种情况下,先返回id xxx指定的对象的引用,然后再调用该对象的“各种其它标签”指定的方法。

10 SystemProperty和Property

类似于get,获取property。注意,它们两个都是返回一个值。

例如<Property name="jetty.home" default="."/>,去获取jetty.home这个属性的值,并且返回,如果没有,就返回“.”。

这个是可以用于拼接路径的,比如

<set name="war"><Property name="jetty.home" default="."/>/webapps/SpringMVCTest.war</set>

其中“<Property name="jetty.home" default="."/>/webapps/SpringMVCTest.war”构成value,如果jetty.home返回“/home/chao/jetty-home”的话,整个value就应该是“/home/chao/jetty-home/webapps/SpringMVCTest.war”。

11 Array和Item

<Array type="java.lang.String"><Item>value0</Item> <Item><New class="java.lang.String"><Arg>value1</Arg></New></Item> </Array>等价于
String[] a = new String[] { "value0", new String("value1") };

12 Map、Entry和Item

<Map><Entry><Item>keyName</Item> <Item><New class="java.lang.String"><Arg>value1</Arg></New></Item> </Entry> </Map>等价于
Map m = new HashMap();
m.put("keyName", new String("value1"));

转载于:https://www.cnblogs.com/hustdc/p/8366606.html

jetty xml解析相关推荐

  1. c语言解析xml字符串_Python XML解析

    Python XML解析 什么是XML? XML 指可扩展标记语言(eXtensible Markup Language). 你可以通过本站学习XML教程 XML 被设计用来传输和存储数据. XML是 ...

  2. XML解析简介及Xerces-C++简单使用举例

    XML是由World WideWeb联盟(W3C)定义的元语言.它已经成为一种通用的数据交换格式,它的平台无关性,语言无关性,系统无关性,给数据集成与交互带来了极大的方便.XML在不同的语言里解析方式 ...

  3. Java XML解析工具 dom4j介绍及使用实例

    Java XML解析工具 dom4j介绍及使用实例 dom4j介绍 dom4j的项目地址:http://sourceforge.net/projects/dom4j/?source=directory ...

  4. C++ XML解析之TinyXML篇[转]

    最 近使用TinyXML进行C++ XML解析,感觉使用起来比较简单,很容易上手,本文给出一个使用TinyXML进行XML解析的简单例子,很多复杂的应用都可以基于本例子的方法来完 成.以后的文章里会讲 ...

  5. Java XML解析器

    使用Apache Xerces解析XML文档 一.技术概述 在用Java解析XML时候,一般都使用现成XML解析器来完成,自己编码解析是一件很棘手的问题,对程序员要求很高,一般也没有专业厂商或者开源组 ...

  6. XML解析方式(来自 传智播客 方立勋视频教程)

    为什么80%的码农都做不了架构师?>>>    XML解析方式一般有两种:DOM和SAX DOM:(Document Object Model,即文档对象模型)是W3C组织推荐的解析 ...

  7. XML解析文件出错解决方法

    XML解析文件出错解决方法 参考文章: (1)XML解析文件出错解决方法 (2)https://www.cnblogs.com/freshman0216/archive/2013/02/28/2937 ...

  8. iOS - OC - XML 解析 - NSXMLParser

    //4.解析数据//4.1 创建XML解析器:SAXNSXMLParser *parser = [[NSXMLParser alloc]initWithData:data];//4.2 设置代理par ...

  9. mapper注解的主要作用_Mybatis中mapper的xml解析详解

    上一篇文章分析了mapper注解关键类MapperAnnotationBuilder,今天来看mapper的项目了解析关键类XMLMapperBuilder. 基础介绍 回顾下之前是在分析config ...

最新文章

  1. 如何搭建自己的 pip 本地 cache
  2. 浙江python必修课程 2020_智慧职教2020Python程序设计基础章节考试答案
  3. 谷歌深度学习四大教训:应用、系统、数据及原理(附数据集列表)
  4. potential things for recommendation
  5. goldendb基于mysql_中兴通讯GoldenDB在中信银行信用卡核心应用实践
  6. Python 中非常狗的一个坑(在 `a={1:2},`后面多了一个逗号,自动被判为 tuple 类型了)
  7. 类型与通用语言运行时:System.Object
  8. 《零基础学习Liunx之三》 The following takes place between 04:00PM and 05:00PM
  9. VSCode 离线安装中文语言包
  10. 关于filenet中的folder以及document简单操作
  11. Catia抛物线建模_基于CATIA的方程曲线设计建模研究
  12. VS2017的离线下载
  13. IDOC的处理函数IDOC_INPUT_ORDERS的增强点的分析
  14. 【Linux基础编程】help命令
  15. 骨干是折腾出来的 读书笔记10
  16. 润乾报表Api导出word只读
  17. Python抓取基金公开信息,从此选基金不再盲目
  18. GMSSL :SM2椭圆曲线公钥密码算法-密钥交换协议
  19. 电子商务基础:中小企业建站方案和资源
  20. 计算机网络实验35步骤,计算机网络模拟器实验报告(1).(35页)-原创力文档

热门文章

  1. 节能prru进入深度休眠节能_2021-2024年中国工业节能行业深度调研及投资前景预测报告...
  2. Redis:23---info命令总结
  3. C++(STL):11---vector源码剖析
  4. MachineLearning(5)-去量纲:归一化、标准化
  5. 2.oracle物理结构,oracle实验2oracle物理结构管理
  6. Java监控工具VisualVM
  7. Java提高篇 —— String缓冲池
  8. C语言void关键字
  9. 最佳Linux服务器发行版
  10. 软件开发如同木匠做桌子