在spring mvc框架中显示xml视图
来源:百度文库 编辑:神马文学网 时间:2024/04/30 09:07:28
举一个很简单的例子,用户在登陆窗口中输入用户名和密码,提交以后以xml的方式显示你填写的内容,
具体步骤如下:
1。配置web.xml文件
login
org.springframework.web.servlet.DispatcherServlet
1
login
*.htm
2。配置login.xml文件
class="org.springframework.web.servlet.view.ResourceBundleViewResolver">
views
class="org.springframework.web.servlet.handler.SimpleUrlHandlerMapping">
LoginAction
class="LoginAction">
LoginInfo
loginfail
main
3。定义控制类loginAction.java和commandClass-->LoginInfo.java
<---------------------LoginAction---------------------------->
public class LoginAction extends SimpleFormController {
protected ModelAndView onSubmit(Object cmd, BindException ex)
throws Exception {
LoginInfo loginInfo = (LoginInfo) cmd;
Map model = new HashMap();
List list = new ArrayList();
list.add(loginInfo);
model.put("loginInfos", list);
return new ModelAndView("login", model);
}
<---------------------LoginAction---------------------------->
<---------------------LoginInfo---------------------------->
public class LoginInfo {
private String username;
private String password;
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
public String getUsername() {
return username;
}
public void setUsername(String username) {
this.username = username;
}
}
<---------------------LoginInfo---------------------------->
4.定义自己的viewResolver--->LoginView
<---------------------LoginView---------------------------->
public class LoginView extends AbstractXsltView {
protected Node createDomNode(Map model, String rootName,
HttpServletRequest request, HttpServletResponse response)
throws Exception {
Document doc = DocumentHelper.createDocument();
Element root = doc.addElement(rootName);
doc.setRootElement(root);
List loginInfos = (List) model.get("loginInfos");
for (Iterator it = loginInfos.iterator(); it.hasNext();) {
LoginInfo info = (LoginInfo) it.next();
Element a = root.addElement("loginInfo");
a.addElement("username").addText(info.getUsername());
a.addElement("password").addText(info.getPassword());
}
response.setContentType("text/xml");
return new DOMWriter().write(doc);
}
}
<---------------------LoginView---------------------------->
5.定义views.properties文件
login.class=LoginView
login.stylesheetLocation=/WEB-INF/xsl/loginInfo.xsl
login.root=loginInfos
6。定义loginInfo.xsl文件
xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
7。定义index.html文件
8。运行tomcat 预览:http://localhost:8080/xml/index.html
注:
views.properties放在classes文件夹。loginInfo.xsl放在/WEB-INF/xsl/文件夹。
index.html放在根目录下,xml文件放在/WEB-INF/下,其他的.class文件放在/WEB-INF/classes/下
需要的dom4j-1.6.jar、spring.jar放到/WEB-INF/lib下。
做完这一切,你就可以在浏览器里面测试结果了~!~
具体步骤如下:
1。配置web.xml文件
org.springframework.web.servlet.DispatcherServlet
2。配置login.xml文件
3。定义控制类loginAction.java和commandClass-->LoginInfo.java
<---------------------LoginAction---------------------------->
public class LoginAction extends SimpleFormController {
protected ModelAndView onSubmit(Object cmd, BindException ex)
throws Exception {
LoginInfo loginInfo = (LoginInfo) cmd;
Map model = new HashMap();
List list = new ArrayList();
list.add(loginInfo);
model.put("loginInfos", list);
return new ModelAndView("login", model);
}
<---------------------LoginAction---------------------------->
<---------------------LoginInfo---------------------------->
public class LoginInfo {
private String username;
private String password;
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
public String getUsername() {
return username;
}
public void setUsername(String username) {
this.username = username;
}
}
<---------------------LoginInfo---------------------------->
4.定义自己的viewResolver--->LoginView
<---------------------LoginView---------------------------->
public class LoginView extends AbstractXsltView {
protected Node createDomNode(Map model, String rootName,
HttpServletRequest request, HttpServletResponse response)
throws Exception {
Document doc = DocumentHelper.createDocument();
Element root = doc.addElement(rootName);
doc.setRootElement(root);
List loginInfos = (List) model.get("loginInfos");
for (Iterator it = loginInfos.iterator(); it.hasNext();) {
LoginInfo info = (LoginInfo) it.next();
Element a = root.addElement("loginInfo");
a.addElement("username").addText(info.getUsername());
a.addElement("password").addText(info.getPassword());
}
response.setContentType("text/xml");
return new DOMWriter().write(doc);
}
}
<---------------------LoginView---------------------------->
5.定义views.properties文件
login.class=LoginView
login.stylesheetLocation=/WEB-INF/xsl/loginInfo.xsl
login.root=loginInfos
6。定义loginInfo.xsl文件
7。定义index.html文件
8。运行tomcat 预览:http://localhost:8080/xml/index.html
注:
views.properties放在classes文件夹。loginInfo.xsl放在/WEB-INF/xsl/文件夹。
index.html放在根目录下,xml文件放在/WEB-INF/下,其他的.class文件放在/WEB-INF/classes/下
需要的dom4j-1.6.jar、spring.jar放到/WEB-INF/lib下。
做完这一切,你就可以在浏览器里面测试结果了~!~
在spring mvc框架中显示xml视图
Spring学习日记 - 在spring mvc中集成tiles
Struts VS Spring两种MVC框架
Struts VS Spring 两种MVC框架
VC编程中如何在视图区显示工具提示
.NET 框架中的 XML:在 .NET 框架中使用 XML 架构执行代码生成(2)
.NET 框架中的 XML:在 .NET 框架中使用 XML 架构执行代码生成(3)
.NET 框架中的 XML:在 .NET 框架中使用 XML 架构执行代码生成(2)
Struts VS Spring 两种MVC框架比较
SPRING MVC
Spring MVC 入门+MVC 简介
Spring MVC初探
Spring MVC 入门
Spring mvc控制器
Spring mvc控制器2
Spring MVC 入门
MVC框架是什么
Spring MVC 入门+MVC 简介test
Spring MVC 入门+MVC 简介1
本文是开发基于spring的web应用的入门文章,前端采用Struts MVC框架,中间层采用spring,后台采用Hibernate
开发Spring MVC应用程序(2)
Home - Spring Portlet MVC - Confluence
开发Spring MVC应用程序(1)
Spring MVC step-by-stepd