JavaBean与xml之间的转换

一、前言
做微信公众号平台开发的项目,将会用到将不同类型的对象转换为xml字符串,而后再做相应的处理,下面将对象转xml字符串的功能介绍如下。
二、引入jar包
下载jar链接:
https://download.csdn.net/download/qq_43026206/84232983
三、使用方法
1、创建对象

	public class BaseMessage {
	@XStreamAlias("ToUserName")  //解决标签体第一个字母大写的问题
	private String toUserName;
	
	@XStreamAlias("FromUserName") 
	private String fromUserName;
	
	@XStreamAlias("CreateTime") 
	private String createTime;
	
	@XStreamAlias("MsgType") 
	private String msgType;
	public String getToUserName() {
		return toUserName;
	}
	public void setToUserName(String toUserName) {
		this.toUserName = toUserName;
	}
	public String getFromUserName() {
		return fromUserName;
	}
	public void setFromUserName(String fromUserName) {
		this.fromUserName = fromUserName;
	}
	public String getCreateTime() {
		return createTime;
	}
	public void setCreateTime(String createTime) {
		this.createTime = createTime;
	}
	public String getMsgType() {
		return msgType;
	}
	public void setMsgType(String msgType) {
		this.msgType = msgType;
	}
	
	public BaseMessage(Map<String, String> requestMap) {
		this.toUserName = requestMap.get("FromUserName");
		this.fromUserName = requestMap.get("ToUserName");
		this.createTime = System.currentTimeMillis()/1000 + "";
	}
}

创建子类:

@XStreamAlias("xml")  //解决由实体转为xml时root根目录 <xml>问题
public class TextMessage extends BaseMessage{
	public TextMessage(Map<String, String> requestMap,String content) {
		super(requestMap);
		this.setMsgType("text");
		this.content = content;
	}
	
@XStreamAlias("Content") 
private String content;
public String getContent() {
	return content;
}
public void setContent(String content) {
	this.content = content;
}
@Override
public String toString() {
	return "TextMessage [content=" + content + ",  toUserName()=" + getToUserName() + ", "
			+ "fromUserName()=" 	+ getFromUserName() + ", msgType()=" + getMsgType() + "]";
}

}

测试文件

@Test
public void testMsg(){
	Map<String, String> map = new HashMap<String, String>();
	map.put("ToUserName","to");
	map.put("FromUserName","from");
	map.put("MsgType","type");
	TextMessage textMsg = new TextMessage(map,"Nice to meet you");
	XStream stream = new XStream();
	//注解使用
	stream.processAnnotations(TextMessage.class);
	String xml = stream.toXML(textMsg);
	System.out.println(xml);
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值