modelandview

接收请求参数及数据回显

让人想犯罪 __ 提交于 2020-01-22 18:22:02
接收请求参数及数据回显 接收一个参数 //http://localhost:8080/r/user/t1?username=julia @GetMapping("/user/t1") public String test1(@RequestParam("username") String name, Model model) { return "test"; } 接受一个对象 //http://localhost:8080/r/user/t2?id=11&name=julia&age=16 //前端传递的参数名必须和对象的字段名一致 @GetMapping("/user/t2") public String test2(User user){ return "test"; } 通过ModelAndView回显 public ModelAndView handleRequest(HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse) throws Exception { ModelAndView mv = new ModelAndView(); String result = "hellospringmvc"; mv.addObject("msg", result); mv

springmvc入门使用

不想你离开。 提交于 2020-01-18 19:12:17
代码仓库: https://gitee.com/DerekAndroid/HelloSpringMvc.git 参考: https://how2j.cn/k/springmvc/springmvc-springmvc/615.html 1.配置web.xml,使用统一的Servlet管理路径和servlet <?xml version="1.0" encoding="UTF-8"?> <web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_4_0.xsd" version="4.0"> <servlet-mapping> <servlet-name>default</servlet-name> <url-pattern>*.jpg</url-pattern> </servlet-mapping> <!-- 配置Spring MVC的入口 DispatcherServlet,把所有的请求都提交到该Servlet--> <servlet>

Spring MVC控制器的14个技巧

痴心易碎 提交于 2020-01-17 19:56:06
通常,在Spring MVC中,我们编写一个控制器类来处理来自客户端的请求。然后,控制器调用业务类来处理与业务相关的任务,然后将客户端重定向到逻辑视图名称,该名称由Spring的调度程序Servlet解析,以呈现结果或输出。这样就完成了典型的请求-响应周期的往返。 1.使用@Controller构造型 这是创建可以处理一个或多个请求的控制器类的最简单方法。仅通过用构造型注释一个类@Controller ,例如: import org . springframework . stereotype . Controller ; import org . springframework . web . bind . annotation . RequestMapping ; @Controller public class HomeController { @RequestMapping ( "/" ) public String visitHome ( ) { return "home" ; } } visitHome()方法通过重定向到名为home的视图来处理来自应用程序上下文路径(/)的请求。 注意: @Controller原型只能在Spring的配置文件中启用注解驱动时使用: < annotation - driven / > 启用注释驱动时

SpringMVC -> 处理及响应请求

萝らか妹 提交于 2020-01-17 08:00:37
一、基本操作 1.响应请求的方式 序号 响应方式 说明 1 不响应 void+ @ResponseBody 注解 2 ModelAndView 通过 setViewName 方法 3 直接指定响应页面 返回值为String类型,返回结果指定跳转地址 4 重定向 跳转地址前加 redirect: 前缀即可 5 HttpServletRequest和HttpServletResponse 形参中声明这两个变量。然后通过相关api跳转 ModelAndView @RequestMapping ( "/query" ) public ModelAndView query ( ) { System . out . println ( "query" ) ; ModelAndView mv = new ModelAndView ( ) ; mv . setViewName ( "/index.jsp" ) ; return mv ; } 返回void 返回值为void时,方法中可以不用做任何返回,例如下面代码: @RequestMapping ( "/test1" ) public void test1 ( ) { System . out . println ( "test1" ) ; } 此时,在浏览器端请求/test1接口,springmvc会默认去查找和方法同名的页面作为方法的视图返回

SpringMVC源码阅读:拦截器

纵然是瞬间 提交于 2020-01-17 05:20:09
1.前言 SpringMVC是目前J2EE平台的主流Web框架,不熟悉的园友可以看 SpringMVC源码阅读入门 ,它交代了SpringMVC的基础知识和源码阅读的技巧 本文将通过源码(基于Spring4.3.7)分析,弄清楚SpringMVC如何完成视图解析的 2.源码分析 在 SpringMVC源码阅读:拦截器 分析 过doDispatch的运行过程,这里再分析一遍 回到DispatcherServlet类的doDispatch方法,看看doDispatch如何获取ModelAndView HandlerMapping根据request获得HandlerExecutionChain 根据HandlerExecutionChain获取HandlerAdapter HandlerAdapter根据request,response和HandlerExecutionChain调用handle方法返回ModelAndView 然后交由 processDispatchResult 处理 1023行检测从doDispatch方法运行到此是否有异常 1037行根据ModelAndView渲染视图 1259根据视图名称解析成View对象 1282行调用AbstractView的render方法进行渲染 点进去,这里以解析ftl做测试 301行创建包含动态值和静态属性的Map

springMVC原理简单介绍

爱⌒轻易说出口 提交于 2020-01-15 15:47:49
说明: 用户发送请求到DispatcherServlet,即前端控制器 DipatcherServlet调用处理器映射器HandlerMapping解析 处理器映射器HandlerMapping根据请求的url找到具体的处理器,生成处理器对象和处理器拦截器一并发给DispatcherServlet DispatcherServlet通过处理器适配器HandlerAdapter调用处理器; 执行处理器,即controller,也叫后端控制器 controller执行完毕后返回ModelAndview给处理器适配器HandlerAdapter 处理器适配器HandlerAdapter将controller返回的ModelAndView发送给DispatherServlet DispatcherServlet将ModelAndView传给视图解析器viewResolver viewResoler解析后返回具体的view DispatcherServlet对view进行渲染视图(即将模型数据填充到视图中) DispatcherServlet响应客户 来源: https://www.cnblogs.com/cc-java/p/6962977.html

SpringMVC的工作原理

杀马特。学长 韩版系。学妹 提交于 2020-01-15 15:47:26
SpringMVC的工作原理图: SpringMVC流程 1、 用户发送请求至前端控制器DispatcherServlet。 2、 DispatcherServlet收到请求调用HandlerMapping处理器映射器。 3、 处理器映射器找到具体的处理器(可以根据xml配置、注解进行查找),生成处理器对象及处理器拦截器(如果有则生成)一并返回给DispatcherServlet。 4、 DispatcherServlet调用HandlerAdapter处理器适配器。 5、 HandlerAdapter经过适配调用具体的处理器(Controller,也叫后端控制器)。 6、 Controller执行完成返回ModelAndView。 7、 HandlerAdapter将controller执行结果ModelAndView返回给DispatcherServlet。 8、 DispatcherServlet将ModelAndView传给ViewReslover视图解析器。 9、 ViewReslover解析后返回具体View。 10、DispatcherServlet根据View进行渲染视图(即将模型数据填充至视图中)。 11、 DispatcherServlet响应用户。 来源: https://www.cnblogs.com/523823-wu/p/8759895.html

SpringMVC处理请求流程

生来就可爱ヽ(ⅴ<●) 提交于 2020-01-15 15:44:22
1、流程图 2、具体步骤: 1、用户发送请求至前端控制器DispatcherServlet; 2、DispatcherServlet收到请求调用HandlerMapping处理器映射器; 3、处理器映射器根据请求url找到具体的处理器,生成处理器对象及处理器拦截器(如果有则生成)一并返回给DispathcerServlet; 4、DispatcherServlet通过HandlerAdapter处理器适配器调用处理器; 5、执行处理器(Controller,也叫后端控制器); 6、Controller执行完成后返回ModelAndView; 7、HandlerAdapter将controller执行结果ModelAndView返回给DispatcherServlet; 8、DispatcherServlet将ModelAndView传给ViewResolver试图解析器; 9、ViewResolver解析后返回具体View; 10、DispatcherServlet对View进行渲染视图(即将模型数据填充至视图中); 11、DispathcerServlet响应用户。 来源: https://www.cnblogs.com/sanjun/p/9966666.html

SpringMVC执行流程

非 Y 不嫁゛ 提交于 2020-01-15 13:01:20
一、springMvc概念 springMvc是基于servlet的web框架,其简化了web程序的开发 二、springMvc请求流程 在阅读时不妨可以带着几个问题阅读: 1.我们通常在浏览器输入的接口怎么由DispatcherServlet调到具体的Handler的(就是我们自己开发的Controller类) 2.编写Controller的形式有哪几种? springMvc重要组件: 之所以先说这几个组件,是因为只要了解了这几个组件后你便可以对springMvc请求流程有个大致的清晰认识了。(Handler就是我们写的Controller) HandlerMapping HandlerAdapter ViewResolver View HandlerExceptionResolver HandlerInterceptor DisPatcher作为一个主流程入口,看一下DispatcherServlet结构 DispatcherServlet为了简洁,省去了很多方法跟属性 public class DispatcherServlet extends FrameworkServlet { //定义了默认策略名字 private static final String DEFAULT_STRATEGIES_PATH = "DispatcherServlet.properties";

SpringMVC中的@requestMapping问题与controller方法的返回值问题

旧巷老猫 提交于 2020-01-15 05:09:07
@requestMapping 1、url映射   定义controller方法对应的url,进行处理器映射使用   @RequestMapping("/items")   public class ItemsController {...} 2、窄化请求映射 3、限制http请求方法 出于安全性考虑,对 http 的链接进行方法限制。 如果限制请求为 post 方法,进行 get 请求,报错: 但是因为method={}是数组,所以可以把POST与GET方法都写进去 controller 方法的返回值 1、返回ModelAndView   需要方法结束时,定义ModelAndVIew,将Model 和View分别进行设置: modelAndView.addObject("item", itemsCustom); modelAndView.setViewName("editItem"); 2、返回string   若controller方法返回string a.表示返回逻辑视图名 。 (所谓逻辑视图名即:在springMMVC里配置了前缀和后缀,所以具体路径简化为去掉前缀和后缀的路径) 真正视图 (jsp 路径 )= 前缀 + 逻辑视图名 + 后缀 b、 redirect 重定向 商品修改提交后,重定向到商品查询列表。 redirect 重定向特点:浏览器地址栏中的 url 会变化