1、SpringMVC 处理前端提交的数据
1.1 提交的域名和处理方法的参数不一致,使用注解解决
1.2 提交的域名和处理方法的参数不一致,使用注解解决
1.3 提交的是一个对象
2、前端url地址栏传递的是一个参数
请求地址url:http://localhost:8080/springmvc_04_controller_war_exploded/user/t1?name=lan
package com.lan.controller;import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;@Controller
@RequestMapping("/user")
public class UserController {@GetMapping("/t1")//@RequestParam("name"):推荐加上这个注解表示要从前端接收而且能约定跟前端去配对,请求的参数名字是namepublic String test1(@RequestParam("name") String name, Model model){//1.接收前端参数,不用在req.getParameter()来接收了,可以直接接收System.out.println("接收的参数为"+name);//2.将返回的结果传递给前端model.addAttribute("msg",name);//3.视图跳转return "test";}}
3、前端url地址栏传递的是一个对象
package com.lan.controller;import com.lan.pojo.User;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;@Controller
@RequestMapping("/user")
public class UserController {@GetMapping("/t1")//@RequestParam("name"):推荐加上这个注解表示要从前端接收而且能约定跟前端去配对,请求的参数名字是namepublic String test1(@RequestParam("name") String name, Model model){//1.接收前端参数,不用在req.getParameter()来接收了,可以直接接收System.out.println("接收的参数为"+name);//2.将返回的结果传递给前端model.addAttribute("msg",name);//3.视图跳转return "test";}//前端接收的是一个对象//传递的是一个对象User,匹配User对象做的字段名,如果名字一致则ok,否则匹配不到(url地址栏传递的参数要和实体类字段名一致才ok)//http://localhost:8080/springmvc_04_controller_war_exploded/user/t2?id=10&name=lan&age=20//idea中输出的结果:User(id=10, name=lan, age=20)@GetMapping("/t2")public String test2(User user){System.out.println(user);return "test";}}
User实体类
package com.lan.pojo;import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;@Data
@AllArgsConstructor
@NoArgsConstructor
public class User {private int id;private String name;private int age;
}