-
HandlerExecutionChain
查看全部 -
SpringMVC动态概念
查看全部 -
DispatcherServlet 作为中间桥梁,当它的页面拦截到request时,将请求代理给HandlerMapping,由其找到Controller和HandlerInterceptor形成一个HandlerExcutionChain,DispatcherServlet再调用Handler/HandlerAdapter生成ModelAndView返回给DispatcherServlet,DispatcherServlet调用ViewResolver生成view,由ModelAndView做模型数据和视图传递给View,此时就能在页面看到用户界面了。
查看全部 -
SpringMVC基本概念
查看全部 -
HandlerAdapter
查看全部 -
MVC的概念
查看全部 -
Springmvc流程图
查看全部 -
使用json格式返回查询结果
1、使用@ResponseBody注解
2、使用ResponseEntity<T> 作为返回值
查看全部 -
上传文件功能是Spring mvc自带的服务,需要进行配置即可使用
jsp文件上传
<form method="post" action="/courses/doUpload" enctype="multipart/form-data"> <input type="file" name="file"/> <input type="submit"> </form>
查看全部 -
使用HttpServletRequest来处理请求,需要在pom中引入依赖
查看全部 -
SpringMVC的动态概念: 1.用户发送请求request 2.DispatcherServlet拦截request 就需要找到一个Controller 如何找? 3.DispatcherServlet就把功能代理给了HandlerMapping 4.HandlerMapping根据配置 通过annotation找到Controller也找到了HandlerInterceptor 形成了一个HandlerExcutionChain 作为一个Handler或者是HandlerAdapter返回给DispatcherServlet 5.DispatcherServlet调用这个Handler或者是HandlerAdapter(找到Controller,Controller目的:生成ModelAndView) 生成ModelAndView 并返回给DispatcherServlet 6.DispatcherServlet调用ViewResolver(视图解析器)方法 返回View对象给DispatcherServlet 7.DispatcherServlet调用ModelAndView作为模型数据传递给我们的View完成了呈现 返回给DispatcherServlet 8.DispatcherServlet再把视图响应给用户 --------------------------------------------- 1.DispatcherServlet,HandlerMaping 只需要配置 2.Handler/HandlerAdapter忽略掉 3.Controller需要自己写 4.HandlerInterceptor(Controller调用前后干点啥)是一个接口,需要就写不需要就不用实现 5.ModelAndView:只是一个类 也可以使用Map把需要的放进去就好了 6.ViewResolver和HandlerMapping差不多只需要知道使用那种类型就可以了 7.view:不需要管具体的呈现。只需要管是哪一个就好了
查看全部 -
传统方式传参:使用@RequestParam(“courseId”)进行绑定,当需要指定处理的请求方式时,加上method属性值
restful风格传参:使用@PathVariable(“courseId”)进行绑定,同样需要在RequestMapping的value属性中进行声明,value=“/view2/{courseId}”
查看全部 -
pom.xml文件
<dependencyManagement> <dependencies> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-framework-bom</artifactId> <version>${spring.version}</version> <type>pom</type> <scope>import</scope> </dependency> </dependencies> </dependencyManagement> <dependencies> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-webmvc</artifactId> </dependency> <dependency> <groupId>commons-lang</groupId> <artifactId>commons-lang</artifactId> <version>${commons-lang.version}</version> </dependency> <dependency> <groupId>org.slf4j</groupId> <artifactId>slf4j-log4j12</artifactId> <version>${slf4j.version}</version> <exclusions> <exclusion> <groupId>org.slf4j</groupId> <artifactId>slf4j-api</artifactId> </exclusion> </exclusions> </dependency> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>3.8.1</version> <scope>test</scope> </dependency> <dependency> <groupId>javax.servlet</groupId> <artifactId>javax.servlet-api</artifactId> <version>3.0.1</version> <scope>provided</scope> </dependency> <dependency> <groupId>javax.servlet.jsp</groupId> <artifactId>jsp-api</artifactId> <version>2.2</version> <scope>provided</scope> </dependency> <dependency> <groupId>jstl</groupId> <artifactId>jstl</artifactId> <version>1.2</version> </dependency> </dependencies> <build> <finalName>testWebMaven</finalName> <plugins> <plugin> <groupId>org.apache.tomcat.maven</groupId> <artifactId>tomcat7-maven-plugin</artifactId> <version>2.2</version> </plugin> </plugins> </build>
web.xml文件
<!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN" "http://java.sun.com/dtd/web-app_2_3.dtd" ><web-app> <display-name>Archetype Created Web Application</display-name> <servlet> <servlet-name>mvc-dispatcher</servlet-name> <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class> <init-param> <param-name>contextConfigLocation</param-name> <param-value>/WEB-INF/configs/spring/mvc-dispatcher-servlet.xml</param-value> </init-param> <load-on-startup>1</load-on-startup> </servlet> <servlet-mapping> <!-- 拦截所有请求 --> <servlet-name>mvc-dispatcher</servlet-name> <url-pattern>/</url-pattern> </servlet-mapping></web-app>
mvc-dispatcher-servlet.xml文件
<?xml version="1.0" encoding="UTF-8"?><beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:mvc="http://www.springframework.org/schema/mvc" xmlns:context="http://www.springframework.org/schema/context" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context.xsd http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc.xsd"> <!-- 扫描注解 --> <context:component-scan base-package="com.imooc.mvc"></context:component-scan> <!-- 注解驱动 --> <mvc:annotation-driven></mvc:annotation-driven> <!-- 过滤静态资源 --> <mvc:resources location="/imags/" mapping="/imags/**"></mvc:resources> <bean class="org.springframework.web.servlet.view.InternalResourceViewResolver"> <property name="viewClass" value="org.springframework.web.servlet.view.JstlView"/> <property name="prefix" value="/WEB-INF/configs/jsps/"/> <property name="suffix" value=".jsp"/> </bean></beans>
查看全部 -
Spring MVC的工作原理示意图
查看全部 -
Srping MVC的动态概念
request通过http请求发送给dispatcherServlet,dispatcherServlet通过HandlerMapping找到指定的controller,由控制器执行具体的业务逻辑代码
controller执行完毕之后,会返回modelandview给DispatcherServlet
DispatcherServlet调用viewResolver,判断返回给用户那个页面
查看全部
举报