6. SpringMVC 数据处理
2023-07-24 本文已影响0人
Messix_1102
处理提交数据
- 提交的url 参数与处理方法的参数名称一致
请求url localhost://8080/user/t1?name=hunter
@GetMapping("/t1")
public String test1(String name, Model model){
// 接收前端阐述
System.out.println("接收到前端参数为:" + name);
// 返回数据给前端页面
model.addAttribute("msg", name);
// 跳转视图
return "test";
}
- 提交的url 参数与处理方法的参数名称不一致
请求url localhost://8080/user/t1?username=hunter
@GetMapping("/t1")
public String test1(@RequestParam("username") String name, Model model){
// 接收前端阐述
System.out.println("接收到前端参数为:" + name);
// 返回数据给前端页面
model.addAttribute("msg", name);
// 跳转视图
return "test";
}
- 提交一个对象
要求提交表单的参数名与对象字段名称一致
实体类:
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
@Data
@AllArgsConstructor
@NoArgsConstructor
public class User {
private int id;
private String name;
private int age;
}
请求url http://localhost:8080/springmvc_04/user/t2?id=1&name=hunter&age=18
@GetMapping("/t2")
public String test2(User user){
System.out.println(user);
return "test";
}
ModelMap
@GetMapping("/t3")
public String test3(String name, ModelMap map){
// 封装要显示到视图的数据
map.addAttribute("msg", name);
System.out.println(name);
return "test";
}
总结:
ModelMap: 继承了 LinkedHashMap,所以它拥有LinkedHashMap的全部功能
Model: 为ModelMap 的精简版,只适合存储数据
ModelAndView:可以在存储数据的同时,设置返回的视图,进行控制展示层的跳转