SpringMVC-狂神笔记,美团java面试题库

使用springMVC必须配置的三大件(注解或者xml):

处理器映射器、处理器适配器、视图解析器

ModelAndView:模型视图类(方法返回的结果是视图的名称hello,加上配置文件(视图解析器)中的前后缀变成WEB-INF/jsp/hello.jsp。)

//ModelAndView 模型和视图

ModelAndView mv = new ModelAndView();

//封装对象,放在ModelAndView中。Model

mv.addObject(“msg”,“HelloSpringMVC!”);

//封装要跳转的视图,放在ModelAndView中

mv.setViewName(“hello”); //: /WEB-INF/jsp/hello.jsp

return mv;


第三节:

  • POST、DELETE、PUT、GET:添加、 删除、修改、查询

RESTful风格:

  • 在Spring MVC中可以使用  @PathVariable 注解,让方法参数的值对应绑定到一个URI模板变量上。

@Controller

public class RestFulController {

//映射访问路径

@RequestMappi

《一线大厂Java面试题解析+后端开发学习笔记+最新架构讲解视频+实战项目源码讲义》

【docs.qq.com/doc/DSmxTbFJ1cmN1R2dB】 完整内容开源分享

ng("/commit/{p1}/{p2}")

public String index(@PathVariable int p1, @PathVariable int p2, Model model){

int result = p1+p2;

//Spring MVC会自动实例化一个Model对象用于向视图中传值

model.addAttribute(“msg”, “结果:”+result);

//返回视图位置(视图解析器进行解析,找到对应的文件)

return “test”;

}

}

使用method属性指定请求类型

用于约束请求的类型,可以收窄请求范围。指定请求谓词的类型如GET, POST, HEAD, OPTIONS, PUT, PATCH, DELETE, TRACE等

//映射访问路径,必须是POST请求

@RequestMapping(value = “/hello”,method = {RequestMethod.POST})

public String index2(Model model){

model.addAttribute(“msg”, “hello!”);

return “test”;

}

所有的地址栏请求默认都会是 HTTP GET 类型的。


第四节:

结果跳转方式

  • ModelAndView:页面 : {视图解析器前缀} + viewName +{视图解析器后缀}

  • ServletAPI:通过HttpServletResponse进行输出、重定向、转发

@RequestMapping("/result/t1")

public void test1(HttpServletRequest req, HttpServletResponse rsp) throws IOException {

rsp.getWriter().println(“Hello,Spring BY servlet API”);

}

@RequestMapping("/result/t2")

public void test2(HttpServletRequest req, HttpServletResponse rsp) throws IOException {

rsp.sendRedirect("/index.jsp");

}

@RequestMapping("/result/t3")

public void test3(HttpServletRequest req, HttpServletResponse rsp) throws Exception {

//转发

req.setAttribute(“msg”,"/result/t3");

req.getRequestDispatcher("/WEB-INF/jsp/test.jsp").forward(req,rsp);

}

  • 通过SpringMVC来实现转发和重定向 - 无需视图解析器;

@RequestMapping("/rsm/t1")

public String test1(){

//转发

return “/index.jsp”;

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值