1.提交数据的处理
a)提交的域名称和处理方法的参数一致
提交的数据
处理的方法
public String hello(HttpServletRequest req,HttpServletResponse res,String name) throws IOException, ServletException {
System.out.println(name);
return "index.jsp";
}
b)提交的域名称与处理方法的参数名不一致
提交的数据
处理方法
public String hello(HttpServletRequest req,HttpServletResponse res,@RequestParam("uname") String name) throws IOException, ServletException {
System.out.println(name);
return "index.jsp";
}
c)提交的是一个对象
提交的数据
处理方法
public String hello(HttpServletRequest req,HttpServletResponse res,
User user) throws IOException, ServletException {
System.out.println(user);
return "index.jsp";
}
User类
public class User {
private int id;
private String name;
private String pwd;
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getPwd() {
return pwd;
}
public void setPwd(String pwd) {
this.pwd = pwd;
}
@Override
public String toString() {
return "User [id=" + id + ", name=" + name + ", pwd=" + pwd + "]";
}
}
2.数据显示到UI层
a)通过ModelAndView-需要视图解析器
视图解析器配置
<!-- 配置视图渲染器 -->
<bean class="org.springframework.web.servlet.view.InternalResourceViewResolver" >
<!-- 结果视图前缀 -->
<property name="prefix" value="/WEB-INF/jsp/"></property>
<!-- 结果视图后缀 -->
<property name="suffix" value= ".jsp" > </property>
</bean>
处理类
ModelAndView mView = new ModelAndView();
mView.addObject("msg","hhhh anotation");
mView.setViewName("hello");
return mView;
b) 通过ModelMap
数据请求
处理类
public String hello(HttpServletRequest req,HttpServletResponse res,
@RequestParam("uname") String name,ModelMap model) throws IOException, ServletException {
model.addObject("msg", name);
return "index.jsp";
}
ModelAndView与ModelMap的区别
相同:都可以将数据封装并显示到表示层页面
不同:ModelAndView需要指定跳转的视图名,而ModelMap不需要;ModelAndView需要视图解析器,ModelMap不需要