Spring MVC controller数据接收与页面跳转

Spring MVC

MVC:model view controller

  1. MVC全名是Model View Controller 模型视图控制器,每个部分各司其职。
  2. Model:数据模型,JavaBean的类,用来进行数据封装。
  3. View:指JSP、HTML用来展示数据给用户
  4. Controller:用来接收用户的请求,整个流程的控制器。用来进行数据校验等。

配置文件:Maven基本项目模板配置

遵循resultful,json传输数据格式

url地址映射方法

都可以用RequestMapping去代替。

@RequestMapping(value="/blog /{id}", method = RequestMethod.DELETE)

但我习惯用:

方法的映射注解在方法头上:
请求方式注解解释方法签名
@GetMapping(“account/{id}”)获取get请求,并传入id 查找queryAccountById(@PathVariable Integer id)
@DeleteMapping(“account/{id}”)获取delete请求,并传入id 删除deleteAccount(@PathVariable Integer id)
@PostMapping(“account”)获取post请求,并接受请求体中数据 存储saveAccount(@RequestBody Account account)
@PutMapping(“account”)获取put请求,并接受请求体中数据 更新updateAccount(@RequestBody Account account)
属性(方法参数)的映射:
属性对应注解解释位置
@ResponseBody对象返回json字符串常用:方法头 也可:返回对象前,修饰符之后
@RequestBody请求体json字符串接受成对象形参前面
@RequestParam请求中的指定名称的参数传递给控制器中的形参赋值形参前面 需要设置value属性
@PathVariable拥有绑定url中的占位符的。Restful风格的URL形参前面

不常用

属性对应注解解释位置
@RequestHeader获取指定请求头的值请求头的名称
@CookieValue用于获取指定cookie的名称的值value:cookie的名称
@ModelAttribute1. 出现在方法上:表示当前方法会在控制器方法执行前线执行。
2. 出现在参数上:获取指定的数据给参数赋值。
方法或参数
@SessionAttributes用于多次执行控制器方法间的参数共享value:指定存入属性的名称

返回视图 增加数据(设置属性)

返回数据的四种方式:
  • request.setAttribute(“key”,“value”);
  • modelAndView.addObject(“key”,“value”);
  • model.addAttribute(“key”,“value”);
  • map.put(“key”,“value”);
请求转发 重定向 默认配置路径
  • 请求转发 “forward: index.jsp” 同一个请求 webapp下
  • 重定向 “redirect: index.jsp” 两个请求 webapp下
  • 默认路径配置文件中
//请求转发
requst.getRequestDispatcher("index.jsp").forword(request,response);
return "forward:index.jsp";
modelAndView.setViewName("forward: index.jsp");
//重定向
response.sendRedirect("login.jsp");
return "redirect:/index.jsp";
modelAndView.setViewName("redirect:index.jsp");
//默认路径
return "main";
modelAndView.setViewName("main");
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值