【SpringMVC学习笔记】2.常用注解Ⅰ
转发与重定向
- 转发到页面 默认的选项
- 重定向到页面 redirect:path
- 转发到另一个控制器 forward:path
HelloController.java
package com.cyk.controller;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.RequestMapping;
@Controller
@RequestMapping("/hello")
public class HelloController {
//转发
@RequestMapping("/forward")
public String forward(Model model){
//springmvc model默认在请求域中存储值
System.out.println("转发");
model.addAttribute("skill","睡觉");
return "forward";
}
//重定向
@RequestMapping("/redirect")
public String redirect(Model model){
model.addAttribute("skill","煮饭");
System.out.println("重定向");
//不带斜杠的写法是一个相对路径,根据当前上下文决定。hello
//如果是重定向,就跟视图解析的规则无关
return "redirect:/jsp/redirect.jsp";
}
@RequestMapping("/forward2")
public String forwardAnotherController(){
return "forward:/baby/hello";
}
}
BabyController.java
package com.cyk.controller;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
@Controller
@RequestMapping("/baby")
public class BabyController {
@RequestMapping("/hello")
public String greeting(){
System.out.println("baby hello");
return "forward";
}
}
关于springmvc访问web元素
- request
- session
- application
request:可以通过模拟的对象完成操作
也可以使用原生的servletAPI完成
直接在方法中入参即可
session 和 application:同理
注解详解
说明RequestMapping可以通过value(数组的形式),匹配多个路径
path是value的别名
所以同理可改成
RequestMapping中的method可以写成数组形式
form.jsp发送post请求无法被提交
出现