SpringMVC
2020-08-18 17:58:22 69 举报
AI智能生成
登录查看完整内容
SpringMVC思维导图
作者其他创作
大纲/内容
SpringMVC
概述;
SpringMVC的使用就是基于spring的,容器的概念,SpringMVC会创建容器 ,WebApplicationContext. SpringMVC作为容器是创建和管理控制器对象的,使用@Controller创建控制器对象
三层和框架对应
SpringMVC底层访问依然是Servlet-DispatcherServlet(中央调度器)
1 .创建WebApplicationContext对象,读取配置文件,进而创建控制器对象
<servlet> <servlet-name>myweb</servlet-name> <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class><init-param> <param-name>contextConfigLocation</param-name> <param-value>classpath:springmvc.xml</param-value> </init-param> <load-on-startup>1</load-on-startup> </servlet> <servlet-mapping> <servlet-name>myweb</servlet-name> <url-pattern>*.do</url-pattern> </servlet-mapping>
springmvc处理web请求
注解
接受用户提交参数
3.解决请求中post方式有中文乱码,使用过滤器解决问题。CharacterEncodingFilter
<!--注册声明过滤器,解决post请求乱码的问题--> <filter> <filter-name>characterEncodingFilter</filter-name> <filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class> <!--设置项目中使用的字符编码--> <init-param> <param-name>encoding</param-name> <param-value>utf-8</param-value> </init-param> <!--强制请求对象(HttpServletRequest)使用encoding编码的值--> <init-param> <param-name>forceRequestEncoding</param-name> <param-value>true</param-value> </init-param> <!--强制应答对象(HttpServletResponse)使用encoding编码的值--> <init-param> <param-name>forceResponseEncoding</param-name> <param-value>true</param-value> </init-param> </filter> <filter-mapping> <filter-name>characterEncodingFilter</filter-name> <!-- /*:表示强制所有的请求先通过过滤器处理。 --> <url-pattern>/*</url-pattern> </filter-mapping>
5.使用java对象接收请求的参数,要求请求中参数名和属性名- -样
处理器方法的返回值:表示请求的处理结果
3.void :返回值本身不能表示数据和视图,可以响应ajax请求
4.对象Object :表示数据的,响应ajax请求
1.加入处理java到json转换的工具库: jackson
2.在springmvc配置文件加入注解驱动<mvc:annotation-driven />
3.在处理器方法的上面加入@ResponseBody
url-pattren
设置中央调度器的url-pattern是\"/\":导致静态资源访问失败都是404,动态资源可以正常访问
第一种解决静态资源访问的方案:在springmvc的配置文件中1 ) <mvq:default-servlet-handler> 2) < mvc:annotation-driven>
原理:给程序内存中增加一个处理器对象,DefaultHttpReqeustHandler.让这个对象处理静态资源的访问。
第二种处理静态资源
SSM整合开发
ssm整合有两个容器,1 ) springmvc的容器; 2 ) spring的容器
2.spring容器: service,dao等对象
创建容器的方式
1.创建springmvc的容器对象:使用的中央调度器DispatcherServlet
配置文件
1.springmvc的配置文件
2.spring配置文件
3.mybatis主配置文件
4.数据库的属性配置文件
核心技术
转发和重定向
转发: forward
重定向: redirect
异常处理
框架才用的是全局异常处理方式,把异常集中到一个位置处理
1.@ControllerAdvice:放在类上面,表示此类是给控制器类增加异常处理的
拦截器
拦截用户的请求,可以截断请求
定义步骤
<mvc:interceptors> <mvc:interceptor> <mvc:mapping path=\"/**\"/> <bean class=\"com.bjpowernode.handler.MyInterceptor2\" /> </mvc:interceptor> </mvc:interceptors>
重要方法
preHandle
常用来做什么
1.登录验证,检查用户是否登录
3.做日志记录
拦截器和过滤器区别
1.拦截器是springmvc框架中的对象,过滤器是servlet中对象
0 条评论
回复 删除
下一页