springMVC
2016-05-07 00:00
441 查看
摘要: springMVC的controller页面跳转控制,封装表单参数的AbstractCommandController,以及表单中字符串与Date类型的转换
springmvc中有专用于页面跳转的controller,不会对请求做任何处理,直接跳转页面:
封装表单参数的controller:
可继承AbstractCommandController实现:
其中,对表单进行封装的类型还需要配置:
运行结果(2001年12月12日):
springmvc中有专用于页面跳转的controller,不会对请求做任何处理,直接跳转页面:
<!-- 对处理请求的controller进行映射 --> <bean class="org.springframework.web.servlet.handler.SimpleUrlHandlerMapping"> <property name="mappings"> <props> <prop key="start.do">startController</prop> <prop key="login.do">loginController</prop> <prop key="userLogin.do">userLoginController</prop> </props> </property> </bean> <!-- controller的配置 --> <bean id="startController" class="com.yawn.controller.StartController"></bean> <!-- 直接跳转页面的controller --> <!-- <bean id="loginController" class="org.springframework.web.servlet.mvc.UrlFilenameViewController"></bean> --> <bean id="loginController" class="org.springframework.web.servlet.mvc.ParameterizableViewController"> <property name="viewName" value="login"></property> </bean>
封装表单参数的controller:
可继承AbstractCommandController实现:
package com.yawn.contrller; import java.text.DateFormat; import java.text.SimpleDateFormat; import java.util.Date; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import org.springframework.beans.propertyeditors.CustomDateEditor; import org.springframework.validation.BindException; import org.springframework.web.bind.ServletRequestDataBinder; import org.springframework.web.servlet.ModelAndView; import org.springframework.web.servlet.mvc.AbstractCommandController; import com.yawn.entity.User; public class UserLoginController extends AbstractCommandController { public UserLoginController() { } @Override protected ModelAndView handle(HttpServletRequest request, HttpServletResponse response, Object object, BindException exception) throws Exception { System.out.println((User)object); return null; } @Override protected void initBinder(HttpServletRequest request, ServletRequestDataBinder binder) throws Exception { // 当遇到Date类型的数据要绑定时,就会用这个编辑器进行转换;没有日期类型时可以不用重写此方法 binder.registerCustomEditor(Date.class, new CustomDateEditor(new SimpleDateFormat("yyyy-MM-dd"), true)); } }
其中,对表单进行封装的类型还需要配置:
<!-- 接收表单数据的controller,并将表单数据绑定到User对象中 --> <bean id="userLoginController" class="com.yawn.contrller.UserLoginController"> <property name="commandClass" value="com.yawn.entity.User"></property> </bean>
运行结果(2001年12月12日):
User [no=34434, name=fed, password=ddd, date=Wed Dec 12 00:00:00 SGT 2001]
相关文章推荐
- 注解 springMVC
- java 读txt
- java pdfbox2.0.0 划线,表格
- Java之------类反射系列(二)
- 转:eclipse技巧之快速生成Override函数
- java 读取 Excel文件
- JAVA获取class的三种方式
- 从JBoss Seam 2.x迁移到JavaEE 7之二:组件的有效范围Scope
- java 异步机制与同步机制的区别
- JAVA多线程总结
- JAVA学习-类和对象
- JAVAC不是内部解决方法
- Binary, Octal, and Hexadecimal Conversions in Java
- java学习笔记(十四)
- 20145324 《Java程序设计》第10周学习总结
- jdk源码之Map
- Java文件写入时是否覆盖
- jdk源码分析之HashTable
- LinkedHashMap原理及LRU应用
- 20145305 《Java程序设计》第10周学习总结