<!-- 对处理请求的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>
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]