Simple XML(二)

2014-11-24 02:57:41 · 作者: · 浏览: 5
)
private Date bornDate;

@Element
private Double height;

@Override
public String toString() {
return "MyTestVo : [ userName = " + userName + " , wife = " + wife
+ " , realName = " + realName + " , height = " + height
+ " , bornDate = " + bornDate + " ]";
}
//set get ......
}
2.序列化

序列化后生成的simple_testvo.xml文件如下:

Xml代码

michael
2011-09-28 21:47:37.455 CST
173.3

可以和之前的序列化XML文件对比下,看看区别在哪里。

3.反序列化

运行反序列化程序后的打印结果如下:
MyTestVo : [ userName = michael , wife = 小小 , realName = 大大 , height = 173.3 , bornDate = Wed Sep 28 21:47:37 CST 2011 ]

[三]、嵌套对象

1.java bean

Java代码
package michael.serialization.simplexml;

import org.simpleframework.xml.Attribute;
import org.simpleframework.xml.Element;
import org.simpleframework.xml.Root;

/**
* @blog http://sjsky.iteye.com
* @author Michael
*/
@Root
public class ConfigurationVo {
@Element
private ServerVo server;

@Attribute
private int id;

public ServerVo getServer() {
return server;
}

public int getId() {
return id;
}

public void setServer(ServerVo pServer) {
server = pServer;
}

public void setId(int pId) {
id = pId;
}

}

Java代码
package michael.serialization.simplexml;

import org.simpleframework.xml.Attribute;
import org.simpleframework.xml.Element;
import org.simpleframework.xml.Root;
/**
* @blog http://sjsky.iteye.com
* @author Michael
*/
@Root
public class ServerVo {
@Attribute
private int port;

@Element
private String host;

@Element
private SecurityVo security;

public int getPort() {
return port;
}

public String getHost() {
return host;
}

public SecurityVo getSecurity() {
return security;
}

public void setPort(int pPort) {
port = pPort;
}

public void setHost(String pHost) {
host = pHost;
}

public void setSecurity(SecurityVo pSecurity) {
security = pSecurity;
}

}

Java代码
package michael.serialization.simplexml;

import org.simpleframework.xml.Attribute;
import org.simpleframework.xml.Element;
import org.simpleframework.xml.Root;

/**
* @blog http://sjsky.iteye.com
* @author Michael
*/
@Root
public class SecurityVo {
@Attribute
private boolean ssl;

@Element
private String keyStore;

public boolean isSsl() {
return ssl;
}

public String getKeyStore() {
return keyStore;
}

public void setSsl(boolean pSsl) {
ssl = pSsl;
}

public void setKeyStore(String pKeyStore) {
keyStore = pKeyStore;
}

}

2.序列化

Java代码
/**
* @param args
* @throws Exception
*/
public static void main(String[] args) throws Exception {
String xmlpath = "d:/test/michael/simple_testvo.xml";

SecurityVo security = new SecurityVo();
security.setSsl(true);
security.setKeyStore("Michael");

ServerVo server = new ServerVo();
server.setHost("sjsky.iteye.com");
server.setPort(8088);
server.setSecurity(security);

ConfigurationVo config = new ConfigurationVo();
config.setId(10000);
config.setServer(server);

Serializer serializer = new Persister();
try {