网络双星-XML与Java技术

限时加码!20+主流AI编程工具免费用 购周边加赠Coding Plan Lite,Claude Code、Cursor等即刻畅享,学习进阶更高效! 阅读详情
<script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"> </script> XML与Java技术完美地互补,为开发者创造了一个可能性的新世界
Jon Byous
翻译:Frank Gu(guxf@bigfoot.com)

XML--可扩展标记语言--被吹捧为自Java技术横空出世以来Internet应用领域最大的新闻。
很难想象比它们两者更为互补的技术了:Java平台提供了在网络上安全而方便地传播代码的基础,XML技术则为数据提供了同样的能力,一种清晰地,平台独立地表示内容的方法。
1998年2月10日WWW协会(W3C)发布了XML1.0标准。从那时起,XML技术作为一种网络系统中通用的数据交换格式迅速得到了支持。(使用XML)的实际的好处有:

结构化--建立有任何复杂层次的数据模型。
可扩展性--根据需要定义新的标志。
验证--检查数据在结构上的正确性。
独立与媒介--以多中方式发布内容。
独立于供应商和平台--使用标准的商业软件甚至文本工具处理任何符合(XML标准)的文档。
针对XML技术的Java技术标准扩展
SUN通过Java平台支持XML技术,并正领导着为XML定义Java技术标准扩展的努力。它将通过Java Community Process的业界参与者来开发,以确保稳定性和兼容性。企业可以信赖XML标准扩展来获得与Java平台的高质量的集成。
第一步是通过XML标准扩展提供基础功能,包括读,维护和生成XML文本。这些核心功能将形成开发全功能的,基于XML技术的应用程序的构造块。
XML标准扩展将由一个规范,一个参考实现和一个兼容性测试工具组成。根据SUN关于对开放过程和工业标准承诺,XML标准扩展将顺从XML 1.0规范,并充分利用已经为XML技术开发的Java API,包括W3C DOM Level 1 核心建议和SAX 1.0 API.
根据波士顿Patricia Seybold Group的资深顾问Anne Thomas的介绍,这个标准扩展是向前迈出的一大步:“针对XML的Java平台标准扩展将提供生成和处理XML的标准类,并且,因为是标准扩展,这些类将在几乎所有的Java平台上提供。开发者不再需要自己开发这些类,并且XML文档不会显得很累赘,因为我们不需要在应用程序的代码中包含这些类。这些类将会驻留在目标系统中。”
企业平台支持
XML技术还会被使用在SUN Java企业平台的一些关键领域。Java 2平台企业版产品线经理Bill Roth指出:“XML是我们下一代企业计算平台:Java 2平台企业版计划的基础。我们将通过它来使Enterprise JavaBeans组件更便于使用。我们还将使它成为传送企业关键任务数据的标准。”
Sun已经宣布它正在将基于XML技术的标准扩展加入下一个版本的Enterprise JavaBeans架构,以响应客户对提高EJB组件的适用性的要求。(译者注:这里所说的是EJB 2.0,已经发布了。)
完美的组合:XML与Java技术
XML技术被期望给面向网络的应用带来革命性的影响,特别是在数据交换领域。Java 与XML一起使得在诸如电子商务和企业应用集成这样领域的新一代Web应用成为可能。
目前,几乎所有Internet技术的主要参与者都承诺支持XML技术。除了 Sun以外,象IBM, Oracle, Fujitsu, Novell, Webmethods, Ariba, Bluestone, CommerceOne, Vervet, NetPost等公司正在开发将XML和Java一起使用的产品和技术。
Sun,这一新技术的最大支持者也许是Jon Bosak,他还是W3C XML协调组的主席,通常被认为是XML之父。Bosak说:“XML和Java是厂商独立程序的阴和阳。把它们集成在一起,你能获得完整的,平台独立的,基于Web的计算环境。"
"聪明的数据"
Patricia Seybold Group的Anne Thomas解释说:“把Java和XML技术组合在一起产生了轻便的‘聪明’的数据。XML提供了普遍适用的格式化的数据格式,同时Java技术提供了普遍适用的代码。因为用Java语言写的代码可以嵌入用XML语言写的文档中,我们可以创建包含自己的数据处理程序的数据结构。这是伟大的组合。“
Java平台确实是使用XML语言工作的开发人员的首选技术。例如,有很多解析器和通用工具是在Java平台上开发的。开发人员不仅发现Java语言的移植性和吸引人的面向对象特性,他们还被Java语言的效率所深深吸引。企业应用集成分析和顾问公司NC.Focus的总裁JP Morgenthal指出:”使用Java语言写他们的工具允许公司和开发人员更快地完成工作。同时,Java提供字符串处理,对哈希表,URL的支持,以及其它一些特性使它成为使用开发向XML这样的应用的自然工具。最后,共享代码确实容易,这是在这个快速发展的领域中非常重要的一个特性。“
这是一条双向路。利用它的元数据的灵活性性和数据移植性,XML给了Java巨大的帮助,使数据通过网络更加容易移植。Java技术为开发人员提供了相对C和C 的坚实的生产率提高。同时,XML和Java技术直接导致了平台独立的和基于标准的应用程序能被立即开发。
当具有在网络系统上交换信息的需要时,例如电子数据交换(EDI),电子商务,企业资源计划和工作流应用,XML和Java技术一起成为一种最适宜的选择。
可移植的采购定单
很多观察者相信,XML和Java技术一起将革新我们交换和处理信息的方式,我们将能在收到信息的同时使用建立在Java技术上的应用程序,根据我们自己的需要处理它。 Sun的Bill Smith解释说:“XML技术使信息交换成为可能,而Java技术使自动处理更灵活。”Bill是WWW协会XML 连接工作小组的设计师。
例如,用XML语言描述的公司采购定单可以包含生动的成分,例如零件和客户编号,它们可以和数据库结合在一起,在不同的程序中自动更新仓库库存和出货记录而不需要重复输入数据。
在这个例子里,一份定单在不同的应用中可以有不同的含义。在采购部的人可能有权利赋予定单号,指定客户代码和修改金额,而供货方将只能证实它和修改金额,收货人只能查看,存储或打印这份文件。但是,在上述每一种情况下,实质上是同一份文档,基于同样的数据,根据不同的接受者,有不同的行为说明。
或者,同样数据的行为根据处理它的应用程序,甚至应用程序运行的设备的不同而改变。这意味着,举例来说,一个简单的股票市场的数据流可以运行在不同的应用程序中,可以是一个滚动的文本窗口,客户定制的图表或文字和图形混合的Web页面。
在文档管理和出版应用中,XML和Java技术可以提供某种突破,比如独立于媒体的出版,独立于设备的表示,客户端处理定制的数据和视图。
这是因为,与HTML文档依赖Web服务器端的CGI描述语言提供功能不同,XML与Java技术可以将更多的应用功能直接提供给客户设备来处理。这提高了用户在客户端对数据的掌握程度,同时又减少了网络处理和流量。

See Also
XML Technology Pages on java.sun.com
(http://java.sun.com/xml/)
Java Community Process pages on the Java Developer Connection
(http://java.sun.com/jdc/jcp/index.html)
XML and Java Technologies in the News - Search results from our Java Industry ConnectionSM site. (http://java.sun.com/industry/)
The SGML/XML Web Page by Robin Cover
(http://www.oasis-open.org/cover/sgml-xml.html)
Java Project X Technology Release 1 - code for XML technology services.
(http://java.sun.com/features/1999/03/xml-side1.html)
Managing Names and Ontologies: An XML Registry and Repository by Robin Cover
(http://www.sun.com/981201/xml/))
WDVL.com: The Web Developer's Virtual Library - XML Subsite
(http://www.wdvl.com/Authoring/Languages/XML/)
Tutorials for using the Java 2® platform and XML technology
(http://developerlife.com)
General XML info: Published by Seybold
(http://www.xml.com)
XML FAQ
(http://www.ucc.ie/xml/)
Java学习笔记9:模拟老虎机的运转 /** *作者:朱凌风 *日期:2010年6月10日 *天气:晴、热 *功能:模拟老虎机的运转 */  import java.io.*; public class TigerMachine { public static void main(String[] args) {    Machine ma=new Machine(10);  ma.print();  ma.toWork(); }}  阅读详情

相关推荐

MuleSoft企业级AI编排:LLM集成的确定性、可审计治理实践

AI编排(AI Orchestration)是将大语言模型(LLM)深度嵌入企业核心业务流程的关键范式,其本质不是简单调用API,而是通过语义级流程控制实现输入标准化、输出结构化决策可审计。在金融、制造、零售等强合规场景中,MuleSoft凭借DataWeave数据映射、OpenAPI Schema校验、Scatter-Gather多源协同及内置熔断/审计能力,有效弥合LLM非确定性企业系统强约束之间的‘确定性鸿沟’。它不替代模型能力,而是构建安全护栏——确保每一次LLM调用可计量、可回溯、可治理,真正

weixin_33827731的博客 394

如何使用ssm实现双星小区物业管理系统的设计实现

【代码】ssm双星小区物业管理系统的设计实现+jsp

寒夜 820

从单例到依赖注入

这就是教科书式的 Service Locator:一个全局的、按型查表的服务容器,谁需要谁自己去捞。就只依赖它真正用到的能力(接口隔离 ISP),依赖指向抽象(依赖倒置 DIP),而且你想塞个假的。——都从同一个字典里按型捞实例,性能一样,对象也一样。判断该不该注入,别去问"能不能注入",要问的是"这个依赖需要被显性化和抽象化吗"。它有它的优点,这我不否认——简单、不用管线、随处可用。最理想的那种"初始化时注入",当然是构造函数注入。执行的时候,所有系统都注册完了,彼此拿引用是安全的。

生活是一种态度,程序也需要心。 248

Eclipse集成开发环境-软件开发选题【附案例】

为了帮助更多的初学者快速上手,今年我特别总结了最新的仿真选题应用技巧,涵盖了从基础设计到复杂系统的方方面面。作为使用Eclipse的研究人员,去年我协助优化了数十个项目的仿真工作,实现了性能的全面提升。基于Eclipse架构面向Linux的嵌入式软件开发环境的设计实现。基于Android的智能终端通信勘察设计系统的关键技术的研究实现。基于EclipseCDT平台的自动化测试扩展插件的研究设计。基于Eclipse放疗计划系统的自动勾画技术的研究和分析。

坷拉博士 702

LangChain4j 中文文档

欢迎!LangChain4j 的目标是简化将大语言模型集成到 Java 应用中的过程。它的实现方式如下:统一 API: 大语言模型提供商(如 OpenAI 或 Google Vertex AI)和嵌入(向量)存储(如 Pinecone 或 Milvus)都使用专有 API。LangChain4j 提供统一 API,避免你为每个提供商或存储分别学习和实现特定 API。想尝试不同的大语言模型或嵌入存储时,你可以轻松切换,而无需重写代码。LangChain4j 目前支持 20+ 个主流大语言模型提供商 和 30+

qq_43356685的博客 809

解决 Activiti UEL 表达式解析异常 TreeBuilderException

在Activiti工作流中,排他/包容网关条件表达式因嵌套${}导致UEL解析失败,抛出TreeBuilderException。根源在于UEL语法禁止表达式内再次使用${},且需避免XML特殊字符干扰。解决方案包括:移除内部定界符、使用CDATA包裹表达式、确保返回布尔值。建议通过正则扫描、IDE插件校验、编码规范(如单引号字符串、复杂逻辑外置)及测试验证,从源头预防此问题。

小李同学的博客 562

【LLM】第六章:LangChain框架中的大模型的创建调用

说明:本章的环境安装在第一章已经进行了详细的说明了。需要环境搭建好,才好运行本篇的代码。

因为热爱所以坚持 174

Java EE 进阶:3.SpringBoot 快速上手(第一弹):配置环境

Java EE 进阶:3.SpringBoot 快速上手(第一弹):配置环境

要努力去发光,而不是被照亮~ 466

基于Spring AI 的智能聊天机器人

该项目使用最新的Spring AI 2.0.x ,从零开始搭建智能体;文章提到有些代码可使用多种方式书写,这些不同的书写方式都是从Spring AI官方得来,自己也实践了。

Qq121363Aa的博客 174

jquick-pdf 核心原理解析:基于 HTML 模板动态渲染 PDF 的实现逻辑

六层链路是排错地图:读入、解析、变量绑定、布局分页、渲染输出、结果返回,异常先分层再定位。二分删减是最实用的定位手段:先保留标题一段文字,再逐项恢复表格、绑定值分页节点。显式分页自然分页必须分开回归;只是分页提示,不是绝对约束。适用边界常见误区:jquick-pdf 位于“模板抽象”“纯 Java 部署”之间,适合规则明确的业务文档,不适合依赖脚本完整浏览器布局的页面;它 iText、PdfBox 不是替代关系,后两者在底层控制上更强。

PaoHaiJiao的博客 640

Drools vs JVS-Rules 实战对比:如何用技术手段实现业务可配置的规则引擎

本文从工程落地视角出发,对比 Drools JVS-Rules 在热更新、变量加工、决策编排三方面的技术实现机制,重点解析 JVS-Rules 如何通过微服务动态加载、函数式变量封装、可视化节点引擎等设计,支撑业务人员低代码参规则全生命周期。

437

Spring Boot 多数据源实战:让不同 Mapper 走不同数据源

适合需要运行时动态切换数据源的场景,比如读写分离、按租户切换。让不同 Mapper 走不同数据源,核心是让每个 Mapper 绑定到独立的 SqlSessionFactory。如果业务库之间完全独立、互不切换,推荐方案一,简单直观;如果需要运行时动态切换(如读写分离),推荐方案二。实际项目中也可以两者结合:静态分包 + 动态路由兜底。

KevinChen2019的博客 298

GitLab+Jenkins CI-CD自动化部署实战

本文记录了团队基于GitLabJenkins搭建CI/CD流水线的实战过程。通过制定Git Flow分支规范(如master/develop保护分支、MR审核机制),实现代码质量管控;利用Jenkins配置Git拉取、Maven构建、SSH部署及邮件通知,完成“推送即构建、构建即部署”的自动化流程。针对开发生产环境采用不同触发策略(自动/手动),并集成备份回滚脚本保障发布安全。全文涵盖环境搭建、插件配置、常见坑点及面试高频问题,为DevOps实践提供完整参考。

2301_78547133的博客 395

k8s常用命令

作为 Java 开发,你不需要像运维那样掌握所有 K8s 命令。结合你正在用 Rancher Desktop 本地调试 Java 应用的场景,我把命令按。

ffyyhh995511的专栏 126

de风——【从零开始学C++】(二十)红黑树封装map和set

本文从零实现C++中setmap的封装,核心在于利用泛型红黑树共用底层结构。通过KeyOfT仿函数统一比较逻辑,确保仅按key排序;借助const修饰使key不可修改,保障数据结构有序性;结合迭代器实现范围遍历,并通过Insert返回pair<iterator, bool>支持map的operator[]功能。最终完成mymapmyset的完整封装,揭示其本质为“红黑树+泛型外壳”,帮助新手彻底理解容器底层机制。

Xiao_running的博客 661

# Java文件打包成可执行JAR包(两种方式:原生javac\+jar命令 / Maven)

否则报错)

金玉满堂的博客 386

Collections常用方法(速查笔记)

Java Collections 是 java.util 包中的核心工具,掌握高频用法可高效应对开发需求。常用包括:创建不可变集合(如 singletonList、emptySet)、包装只读或线程安全集合(如 unmodifiableList、synchronizedMap),以及排序、反转、打乱、二分查找等操作。注意:sort、reverse 等方法会修改原列表,使用时需谨慎,必要时先拷贝。建议结合官方 Javadoc 查阅方法摘要,提升编码效率安全性。

qq_38980678的博客 398

Node.js MCP:从 JavaScript 运行时到大模型的标准接口

大模型需通过运行环境外部世界交互,Node.js 提供了脱离浏览器的 JavaScript 执行能力,实现前后端统一快速开发。npm npx 分别负责包管理临时执行,为工具调用提供基础。而 MCP 协议则如 AI 的“USB-C”,以标准化接口打通模型工具的连接,解决传统“硬编码”对接的复杂性,实现一次集成、处处可用,推动开放生态发展。

dev_jin的博客 273
上一篇: XML家族图谱(图)
下一篇: I've already got SGML DTDs: how do I convert them
java169
博客等级 码龄18年 27粉丝 2568原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值