首页 > 代码库 > springMVC整合xStream
springMVC整合xStream
一. 简介:
xStream可以轻易的将Java对象转换成xml、JSON。本篇博客将使用springMVC整合利用xStream转换xml。
关于xStream使用的博文:http://blog.csdn.net/zdp072/article/details/39054197
二. 实例:
1. 代码结构图:
2. 实体类:
(1)Account
public class Account { private int id; private String name; private String email; private String address; private Birthday birthday; // getter and setter @Override public String toString() { return this.name + "#" + this.id + "#" + this.address + "#" + this.birthday + "#" + this.email; } }
(2)User
public class User { private String name; private int age; private Boolean sex; private String address; private Birthday birthday; // getter and setter @Override public String toString() { return this.name + "#" + this.age + "#" + this.sex + "#" + this.address + "#" + this.birthday.getBirthday(); } }
(3)Birthday
public class Birthday { private String birthday; public Birthday() { } // getter and setter }
3. spring配置:
<?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:context="http://www.springframework.org/schema/context" xmlns:mvc="http://www.springframework.org/schema/mvc" xsi:schemaLocation="http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc.xsd http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context.xsd"> <!-- 添加注解驱动 --> <mvc:annotation-driven /> <!-- 默认扫描的包路径 --> <context:component-scan base-package="com.zdp" /> <!-- 视图解析器 --> <bean class="org.springframework.web.servlet.view.BeanNameViewResolver"> <property name="order" value=http://www.mamicode.com/"1" />>
4. XstreamController/** * 利用xStream进行Java对象到XML的转换技术 */ @Controller @RequestMapping("/xstream/view") public class XStreamController { // 普通JavaBean转换成XML // url: http://localhost:8080/springmvc_xStream/xstream/view/doXMLXstream @RequestMapping("/doXMLXstream") public ModelAndView doXMLJaxb2View() { ModelAndView mav = new ModelAndView("xStreamMarshallingView"); Account account = new Account(); account.setAddress("address"); account.setEmail("email"); account.setId(1); account.setName("haha"); Birthday day = new Birthday(); day.setBirthday("2010-11-22"); account.setBirthday(day); mav.addObject(BindingResult.MODEL_KEY_PREFIX, account); return mav; } // 转换带List属性的JavaBean // url: http://localhost:8080/springmvc_xStream/xstream/view/doListXMLXstream @RequestMapping("/doListXMLXstream") public ModelAndView doListXMLXStreamView() { ModelAndView mav = new ModelAndView("xStreamMarshallingView"); List<Object> list = new ArrayList<Object>(); for (int i = 0; i < 3; i++) { Account account = new Account(); account.setAddress("北京#" + i); account.setEmail("email" + i + "@12" + i + ".com"); account.setId(1 + i); account.setName("haha#" + i); Birthday birthday = new Birthday(); birthday.setBirthday("2010-11-2" + i); account.setBirthday(birthday); list.add(account); User user = new User(); user.setAddress("china GuangZhou 广州# " + i); user.setAge(23 + i); user.setBirthday(birthday); user.setName("jack#" + i); user.setSex(Boolean.parseBoolean(i + "")); list.add(user); } mav.addObject(list); return mav; } // 转换带有Map属性的JavaBean // url: http://localhost:8080/springmvc_xStream/xstream/view/doMapXMLXstream @RequestMapping("/doMapXMLXstream") public ModelAndView doDifferXMLXStreamView() { ModelAndView mav = new ModelAndView("xStreamMarshallingView"); Account account = new Account(); account.setAddress("广东"); account.setEmail("email"); account.setId(1); account.setName("haha"); Birthday birthday = new Birthday(); birthday.setBirthday("2010-11-22"); account.setBirthday(birthday); User user = new User(); user.setAddress("china GuangZhou"); user.setAge(23); user.setBirthday(birthday); user.setName("jack"); user.setSex(true); Map<String, Object> map = new HashMap<String, Object>(); map.put("account", account); map.put("user", user); mav.addObject(map); return mav; } // 转换数组 // url: http://localhost:8080/springmvc_xStream/xstream/view/doArrayXMLXstream @RequestMapping("/doArrayXMLXstream") public ModelAndView doArrayXMLXStreamView() { ModelAndView mav = new ModelAndView("xStreamMarshallingView"); Account[] accountArr = new Account[2]; Account account = new Account(); account.setAddress("北京"); account.setEmail("email"); account.setId(1); account.setName("haha"); Birthday birthday = new Birthday(); birthday.setBirthday("2010-11-22"); account.setBirthday(birthday); accountArr[0] = account; account = new Account(); account.setAddress("上海"); account.setEmail("email"); account.setId(1); account.setName("haha"); birthday = new Birthday(); birthday.setBirthday("2014-11-22"); account.setBirthday(birthday); accountArr[1] = account; mav.addObject(accountArr); return mav; } }
源码下载:http://download.csdn.net/detail/zdp072/7866271原文:http://blog.csdn.net/ibm_hoojo/article/details/6371647
springMVC整合xStream
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。