- 浏览: 316106 次
- 性别:
- 来自: 宁波
文章分类
最新评论
-
bqlin1987:
请问是不是ITeye的代码莫名的换行了?
学习SSO-1 Tomcat启用ssl -
a6821122:
在data-config.xml 里的javascript 不 ...
solr导入Oracle日期时间数据的处理 -
jie_kong:
是flexigrid不是flexgrid
FlexGrid自己用的经验 -
zjnbshifox:
呵呵,我也在摸索阶段,谢谢提醒ligywin 写道还需要补充以 ...
CAS自定义Credentials登录 -
ligywin:
还需要补充以下方法import org.apache.comm ...
CAS自定义Credentials登录
- <?xml version="1.0" encoding="GBK"?>
- <connections>
- <connection>
- <isDataSource>true</isDataSource>
- <jndiname>jdbc/opendb</jndiname>
- </connection>
- <connection>
- <isDataSource>false</isDataSource>
- <driver>com.ibm.db2.jcc.DB2Driver</driver>
- <url>jdbc:db2://10.1.1.10:50000/dbjl</url>
- <user>db2admin</user>
- <pwd>db2admin</pwd>
- </connection>
- </connections>
</connection>
- <?xml version="1.0"?>
- <xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema"
- xmlns:jaxb="http://java.sun.com/xml/ns/jaxb"
- jaxb:version="1.0">
- <xsd:element name="connections">
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element name="connection" minOccurs="1" maxOccurs="unbounded">
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element name="isDataSource" type="xsd:boolean" minOccurs="1" maxOccurs="1"/>
- <xsd:element name="jndiname" type="xsd:string" minOccurs="0" maxOccurs="1"/>
- <xsd:element name="driver" type="xsd:string" minOccurs="0" maxOccurs="1"/>
- <xsd:element name="url" type="xsd:string" minOccurs="0" maxOccurs="1"/>
- <xsd:element name="user" type="xsd:string" minOccurs="0" maxOccurs="1"/>
- <xsd:element name="pwd" type="xsd:string" minOccurs="0" maxOccurs="1"/>
- </xsd:sequence>
- </xsd:complexType>
- </xsd:element>
- </xsd:sequence>
- </xsd:complexType>
- </xsd:element>
- </xsd:schema>
import java.util.List;
import javax.xml.bind.JAXBException;
import javax.xml.bind.Unmarshaller;
import com.jl.de.jaxb.ConnectionsType.ConnectionType;
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
try {
JAXBContext cxt = JAXBContext.newInstance("net.fox.jaxb");
Unmarshaller unm = cxt.createUnmarshaller();
ConnectionsType cnt = (ConnectionsType) unm.unmarshal(new FileInputStream("apcfg.xml"));
List list = cnt.getConnection();
for(int i=0;i
使用XML和JAXB的优势
l 简单易用。
通过上面的例子,大家可以发现所有对XML文档的操作都隐藏起来了,你的应用程序不用使用SAX或DOM接口编程去操纵XML文档,使程序量降低,错误率减少,有助于程序质量的提高。
l 维护性好。
当你的产品需要更新,或是数据模型需要改变时,只需要重新定义Schema,然后让JAXB重新生成对XML文档进行操纵的类,使得你的应用程序具有很好的维护性。
l 数据兼容性好。
当你进行版本更新的时候,往往要考虑兼容性问题。由于你使用了XML作为数据交换的格式,只需要提供XSLT的模板就能将原有的数据格式自动转换成新版本的格式。除此以外,你可以将你的XML表示的图形数据文件任意转换成其他标准的CAD数据格式,一切都在你的掌握之中。
l 有较好的性能。
因为JAXB在运行时在大部分时间中都是直接操纵内存中的Java对象,只有在读取和存储文件的时候才会与XML文件进行IO操作,实质上是为XML文件做了一个缓存,因此运行时的性能很好。
劣势(也是网上的资料):
跟直接使用Java对象序列化相比,JAXB也有它的限制。在使用Java序列化的时候,Java对象和XML文档是直接对应起来的。例如,在画布上有一个“java.awt.Button”对象,那么当你进行序列化的时候,“java.awt.Button”的所有数据被直接存储到序列化文件中;在进行图形恢复的时候,文件中的序列化数据直接就转换成“java.awt.Button”对象了。然而在使用JAXB的时候,由于JAXB没有将XML文档转换成指定的Java类的功能,在XML和应用程序中间会多一层。例如,你不能要求JAXB从XML文档数据中直接生成“java.awt.Button”对象,JAXB在大多数环境中只能生成中间进行数据传递的对象。用“java.awt.Button”作为例子,使用JAXB,你只能根据XML中的数据生成JAXB特有的“MyButton”对象,在再通过“MyButton”对象中的数据去初始化“java.awt.Button”对象。这种间接的数据传递所带来的负面影响是使用JAXB的系统会产生大量传递数据的中间对象。虽然说,由于Java虚拟机自动回收内存的特点,大量中间对象的产生有可能在长时间运行的Server应用中降低系统的性能,但是这种数据传递的方法在许多系统设计中都是可行的。
xml解析不仅可以用dom,jaxb,apache common的digester也不错的:)
评论
我想问一下sun.security.krb5.internal.crypto.c这个是哪个包里的类啊,我的qq号是744399894。如果您有时间给我发个消息,谢谢
我找不到相关资料~!
发表评论
-
jasper report与Spring mvc整合
2015-10-19 16:02 1650配置jasper view resolver <be ... -
solr导入Oracle日期时间数据的处理
2013-02-08 10:01 5165参考文章: http://stackoverflow.com/ ... -
solr服务端加亮设置
2013-02-06 23:25 1321在${solr.home}/conf/solrconfig.x ... -
Solr客户端自定义开发
2013-02-06 16:52 1688@Service @Qualifier(" ... -
CAS 客户端获取Credentials额外信息
2013-02-06 09:40 4018服务端的配置 1、在deployerContext.xml中加 ... -
CAS自定义Credentials登录
2013-02-02 00:03 7993先看了这篇文章http://www.blogjava.net/ ... -
Spring data MongoDB DSL
2013-01-29 13:38 2614这两天自己配置了一个通过Spring Data来连接Mongo ... -
Spring MVC和freemarker配置
2013-01-21 13:45 2486参考文章:http://www.cnblogs.com/hoo ... -
我自己的maven环境
2013-01-17 14:37 1112今天把自己的maven环境记录下来,准备重装系统能找到 mav ... -
Spring-data jpa学习
2013-01-17 14:25 1821一个早上加一个中午就耗在这里了啊,就一个小问题,让我吐血不已, ... -
今天学会的DetachedCriteria用法
2013-01-12 22:01 10191以前用hibernate,一般都是使用hql语句的,因为和sq ... -
学习SSO-1 Tomcat启用ssl
2012-11-29 10:41 6995根据网上的http://www.kafeitu.me/sso/ ... -
Solr连接数据库
2012-04-10 09:40 6221要建立自己的全文检索 ... -
Solr试用小记
2012-04-10 09:15 15731、下载tomcat7、solr 3.5.0 以及IKAnal ... -
java生成二维码,qrcode
2012-03-22 15:41 7024通过barcode4j生成 @Controller @R ... -
使用HttpClient 4.1.2调用webservice
2012-01-19 14:22 19262下载httpclient,把压缩包里lib目录的所有jar放到 ... -
Spring MVC3 Hibernate3 Annotation 补充
2011-05-30 11:59 1411通过配置文件进行事务声明 app-config.xml & ... -
Spring MVC3 Hibernate3 Annotation
2011-05-30 11:56 1780web.xml <?xml version=&quo ... -
Tomcat Mod_jk负载均衡Session复制的几点补充
2010-02-24 16:49 1339tomcat和mod_jk进行负载均衡的时候,如果要实现Ses ... -
第一次实际应用Spring MVC
2009-11-17 08:37 1604要做一个简单的投票的东西,看spring mvc的文章已经很久 ...
相关推荐
### JAXB使用步骤 1. **创建Java模型类**:定义要序列化的Java类,使用注解如`@XmlRootElement`,`@XmlElement`等来标注字段。 2. **设置JAXB上下文**:使用`JAXBContext`来获取Java类型和XML之间的映射信息。这...
1. **编译时绑定**:在开发阶段,JAXB使用`xjc`工具将XML Schema(XSD)文件转换为一组Java类,这些类包含了对XML结构的表示。这个过程也被称为“逆向工程”。 2. **运行时转换**:在程序运行时,JAXB提供了一组API...
如何更好地jaxb使用如何更好地jaxb使用如何更好地jaxb使用如何更好地jaxb使用
在本示例中,"JAXB使用Socket流进行双向通信源码"结合了这两个概念,创建了一个基于Java的客户端(Client_Socket)应用,实现了XML数据在客户端和服务端之间的双向传输。 首先,我们要理解JAXB的工作原理。JAXB允许...
### JAXB使用场景 - 数据交换:在分布式系统中,服务间通信常通过XML格式的数据交换,JAXB提供了便捷的序列化和反序列化手段。 - 配置文件解析:XML常被用作应用程序的配置文件,JAXB能帮助解析和操作这些配置。 - ...
1. 什么是JAXB? Java Architecture for XML Binding (JAXB) 是一个业界的标准,是一项可以根据XML
2. **实例化(Unmarshalling)**:当需要将XML数据转换为Java对象时,JAXB使用Unmarshaller接口解析XML文档,生成对应的Java对象。这个过程是将XML数据"反序列化"为可操作的Java对象。 3. **序列化(Marshalling)*...
- **软件许可**:明确了 JAXB 使用时的许可条款,通常遵循开放源代码许可证。 - **示例应用**:包含多个示例应用程序,演示如何使用 JAXB 进行 XML 数据绑定。 - **运行时绑定框架**:这部分详细介绍了如何在运行时...
### JAXB使用示例 以下是一个简单的JAXB解析生成XML的例子: ```java import javax.xml.bind.JAXBContext; import javax.xml.bind.Marshaller; import javax.xml.bind.Unmarshaller; public class JaxbExample { ...
然后,JAXB使用这些类生成XML Schema(XSD),或者反过来,基于XML Schema生成Java类。这个过程叫做编译或绑定。这种方式使得Java应用程序能够轻松地与XML数据交互,而无需手动解析XML。 **HelloWorld示例** 是学习...
JAXB使用Java注解来指定Java类和XML元素之间的映射关系。例如,我们可以使用`@XmlRootElement`、`@XmlElement`、`@XmlAttribute`等注解来定义Java类的结构。 ```java import javax.xml.bind.annotation....
JAXB使用注解或绑定文件来定义对象和XML之间的映射。例如,当我们有一个`Plan`类,我们可以通过JAXB将其序列化为`plan.xml`文件,反之亦然。 ```java @XmlRootElement(name = "plan") public class Plan { private...
在给定的例子"JAXBDemo"中,我们可以预期它包含了一个简单的JAXB使用示例,帮助我们理解这一过程。 首先,让我们了解一下JAXB的工作原理。JAXB的核心思想是通过元数据(如注解或XML Schema)将Java类与XML结构关联...
**JAXB(Java Architecture for XML ...总结来说,JAXB是一种强大的Java XML处理技术,而XMLSPY作为一个全面的XML工具,是开发和调试XML相关项目的好帮手,尤其在配合JAXB使用时,可以大大提高开发效率和代码质量。
"jaxb使用文档.doc"应该是详细介绍了JAXB的使用方法,包括基本操作、高级特性以及可能遇到的问题和解决方案。文档可能还涵盖了错误处理、性能优化、XML Schema的处理等内容。 总的来说,这份"JAXB资料集.rar"是一份...
JAXB使用`@XmlRootElement`和`@XmlElement`等注解来识别哪些类和字段应该映射到XML元素。默认情况下,JAXB会自动为这些元素和属性分配命名空间前缀。为了自定义这些前缀,我们需要使用`@XmlSchema`、`@...
JAXB使用注解(Annotations)来定义这些类如何映射到XML结构。常见的注解包括: 1. `@XmlRootElement`:标记一个类作为XML文档的根元素。 2. `@XmlElement`:将类的字段映射为XML元素。 3. `@XmlAttribute`:将类的...
JAXB 使用 javax.xml.bind.annotation 包下的 Java 标注,例如: * @XmlRootElement:标注 Java 类为 XML 根元素 * @XmlElement:标注 Java 属性为 XML 元素 * @XmlAttribute:标注 Java 属性为 XML 属性 六、JAXB...
jaxb开发使用文档 JAXB(Java Architecture for XML Binding)是一种java标准库,用于处理XML与java对象的映射。jaxb技术在javaSE6.0中已经包含了jaxb定义的所有API,在处理XML文档时,使用jaxb要比使用JAXP(DOM、...