package com.zdp.controller;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import org.springframework.stereotype.Controller;
import org.springframework.validation.BindingResult;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.servlet.ModelAndView;
import com.zdp.domain.Account;
import com.zdp.domain.Birthday;
import com.zdp.domain.User;
/**
* 利用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;
}
}
没有合适的资源?快使用搜索试试~ 我知道了~
资源推荐
资源详情
资源评论
收起资源包目录
springmvc_xStream.zip (41个子文件)
springmvc_xStream
.project 1KB
WebContent
WEB-INF
jsp
lib
spring-context-support-3.2.0.RELEASE.jar 124KB
spring-instrument-3.2.0.RELEASE.jar 7KB
spring-expression-3.2.0.RELEASE.jar 189KB
spring-oxm-3.2.0.RELEASE.jar 71KB
xpp3_min-1.1.4c.jar 24KB
spring-beans-3.2.0.RELEASE.jar 591KB
spring-core-3.2.0.RELEASE.jar 843KB
jstl.jar 17KB
standard-1.1.2.jar 384KB
spring-context-3.2.0.RELEASE.jar 834KB
spring-web-3.2.0.RELEASE.jar 610KB
spring-webmvc-3.2.0.RELEASE.jar 621KB
spring-webmvc-portlet-3.2.0.RELEASE.jar 184KB
commons-logging.jar 59KB
spring-aop-3.2.0.RELEASE.jar 327KB
log4j-1.2.13.jar 350KB
spring-instrument-tomcat-3.2.0.RELEASE.jar 10KB
spring-aspects-3.2.0.RELEASE.jar 68KB
xstream-1.4.1.jar 479KB
spring-tx-3.2.0.RELEASE.jar 235KB
springmvc.xml 2KB
log4j.properties 1KB
web.xml 2KB
index.jsp 371B
META-INF
MANIFEST.MF 39B
src
com
zdp
domain
User.java 949B
Birthday.java 321B
Account.java 1KB
controller
XStreamController.java 4KB
.settings
org.eclipse.wst.jsdt.ui.superType.container 49B
org.eclipse.wst.common.project.facet.core.xml 345B
org.eclipse.jdt.core.prefs 670B
org.eclipse.wst.jsdt.ui.superType.name 6B
org.eclipse.wst.common.component 497B
.jsdtscope 503B
build
classes
com
zdp
domain
User.class 2KB
Account.class 2KB
Birthday.class 629B
controller
XStreamController.class 4KB
.classpath 841B
共 41 条
- 1
zdp072
- 粉丝: 686
- 资源: 30
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
- 1
- 2
前往页