SpringMVC-six(Controller中参数绑定)
06【掌握】Controller中参数绑定
1,简单类型参数绑定
1.创建index.jsp
2.创建UserController
3.注意点
页面表单的name属性值要和Controller方法的形式参数的名字一样
2,集合类型参数绑定【数组】
1.修改index.jsp
2.修改UserController
3,对象类型参数绑定【重点】
1.修改index.jsp
2.创建User
3.修改UserController
3,日期类型参数绑定【重点】
1.修改index.jsp
2.修改UserController
3.修改User
4,Servlet的常用对象参数绑定
得到request session servletContext respose
1.修改index.jsp
2.修改UserController
方式1【直接做为形式参数】
方式2【使用注入的方式】
方式2的注意点
所在类的对象必须由IOC容器创建 否则无法注入
5,HttpServletRequest的多种绑定方式
1.方式1
在Controller的方法里面作为形式参数
2.方式2
在IOC容器创建的对象里面使用注入的方法
3.方式3完全解耦的方式
创建WebUtils
/**
* springmvc的web常用对象获取工具类
* @author LJH
*
*/
public class WebUtils {
/**
* 得到ServletRequestAttributes
* @return
*/
public static ServletRequestAttributes getServletRequestAttributes() {
ServletRequestAttributes requestAttributes = (ServletRequestAttributes) RequestContextHolder
.getRequestAttributes();
return requestAttributes;
}
/**
* 得到当前线程的HttpServletRequest
*/
public static HttpServletRequest getCurrentRequest() {
HttpServletRequest request = getServletRequestAttributes().getRequest();
return request;
}
/**
* 得到当前线程的HttpServletResponse
*/
public static HttpServletResponse getCurrentResponse() {
HttpServletResponse response = getServletRequestAttributes()
.getResponse();
return response;
}
/**
* 得到当前线程的HttpSession
*/
public static HttpSession getCurrentSession() {
return getCurrentRequest().getSession();
}
/**
* 得到当服务器的ServletContext
*/
public static ServletContext getServletContext() {
return getCurrentRequest().getServletContext();
}
}