simpleframework XML demo

      高技术就应当,每日弄点新东西。别人呕心沥血的开发了一些新技术,笨笨的我们至少也要学学人家的思想。

pom.xml

<dependency>
	<groupId>org.simpleframework</groupId>
	<artifactId>simple-xml</artifactId>
        <version>2.7.1</version>
</dependency>

 RequestXML.java

import java.io.ByteArrayOutputStream;
import java.io.OutputStream;

import org.simpleframework.xml.Serializer;
import org.simpleframework.xml.core.Persister;

import com.yada.util.RequestXML;

public class TestXml {
	 
	public static void main(String[] args) throws Exception {
		create() ;
		parse() ;
	}
	
	public static void create(){
		String xmlStr; 
		RequestXML xml = new RequestXML(); 
	    xml.setUserName("6666");
	    xml.setRealName("555");
	    xml.setHeight(22.2);
	    xml.setWife("888");

	    try { 
	        Serializer serializer = new Persister(); 
	        //输出流
	        OutputStream out = new ByteArrayOutputStream();           
	        serializer.write(xml, out);
	        xmlStr = out.toString();
	        System. out.print(xmlStr);
	        out.close();
	    } catch (Exception e) { 
	        e.printStackTrace(); 
	    } 
	}
	
	public static void parse() throws Exception{
		String xmlpath = "<requestXML wife='888' realName='555'>    <userName>6666</userName>		   <height>22.2</height>		</requestXML>";  
		
	    Serializer serializer = new Persister();  
	    RequestXML xml = new RequestXML() ;
	    serializer.read(xml, xmlpath);  
        System.out.println(xml); 
	}
	
}
import org.simpleframework.xml.Attribute;
import org.simpleframework.xml.Element;
import org.simpleframework.xml.Root;

@Root
public class RequestXML {

	@Element 
    private String userName; 
 
    @Attribute 
    private String wife; 
 
    @Attribute
    private String realName; 
 
    @Element 
    private Double height; 
 
    public String getUserName() {
		return userName;
	}

	public void setUserName(String userName) {
		this.userName = userName;
	}

	public String getWife() {
		return wife;
	}

	public void setWife(String wife) {
		this.wife = wife;
	}

	public String getRealName() {
		return realName;
	}

	public void setRealName(String realName) {
		this.realName = realName;
	}

	public Double getHeight() {
		return height;
	}

	public void setHeight(Double height) {
		this.height = height;
	}

	public String toString() { 
        return "MyTestVo : [ userName = " + userName + " , wife = " + wife 
                + " , realName = " + realName + " , height = " + height 
                +" ]"; 
    } 
}

 序列化操作

TestXml.java

import java.io.File;
import java.io.FileInputStream;
import java.io.InputStreamReader;

import org.simpleframework.xml.Serializer;
import org.simpleframework.xml.core.Persister;

import com.yada.util.RequestXML;

public class TestXml {
	 
	public static void main(String[] args) {
		create() ;
		parse() ;
	}
	
	public static void create(){
		String xmlpath = "i:/1/simple_testvo.xml"; 
		RequestXML xml = new RequestXML(); 
	    xml.setUserName("6666");
	    xml.setRealName("555");
	    xml.setHeight(22.2);
	    xml.setWife("888");

	    try { 
	        Serializer serializer = new Persister(); 
	        File result = new File(xmlpath); 
	        serializer.write(xml, result); 
	    } catch (Exception e) { 
	        e.printStackTrace(); 
	    } 
	}
	
	public static void parse(){
		 String xmlpath = "i:/1/simple_testvo.xml";  
		  
	       Serializer serializer = new Persister();  
	  
	       try {  
	           InputStreamReader is = new InputStreamReader(new FileInputStream(  
	                   xmlpath), "utf-8");  
	           RequestXML parseVo = serializer.read(RequestXML.class, is);  
	           System.out.println(parseVo);  
	       } catch (Exception e) {  
	           e.printStackTrace();  
	       }  
	}
	
}

 字符串

参考 http://www.cnblogs.com/zivxiaowei/p/3605283.html

猜你喜欢

转载自see-you-again.iteye.com/blog/2354026
今日推荐