springMVC学习总结

spring

简单使用
	1.在web.xml文件配置ContextLoaderListener

springMVC

简单使用:
	1.在web.xml配置DispatcherServlet来处理指定的http请求路径,还要指定springMvc.xml配置文件位置来供DispatcherServlet来初始化springMVC。
	2.在springMvc.xml文件中配置包扫描路径,来扫描@Controller。还要配置视图解析器,来指定返回哪个视图页面。

杂记:

	1.支持Restful风格。?:代表一个字符、*:代表多个字符、**:代表多个路径
	2.支持get/put/delete/post请求。用HiddenHttpMethodFiler过滤器解析_method参数来将request请求包装成对应的请求方式。

入参:

	1.从url中获取参数,@PathVariable
	2.绑定入参,@RequestParam和@RequestHeader和@CookieValue
		或直接使用pojo类型当入参,还支持级联属性。如:name、dept.name
	3.MVC方法可以接受这些ServletAPI类型的参数:
		HttpServletRequest/HttpServletRespose/HttpSession
		InputStream/OutputStream
		Reader/Writer等
		可以用Writer直接输出指定内容到页面。

出参:

	1.ModelAndView:处理方法返回值类型为ModelAndView时,方法体即可通过该对象添加模型数据。
		原理:其实是将数据都放到了HttpServletRequest中。
	2.Map及Model:入参为org.springframework.ui.Model、org.springframework.ui.ModelMap或java.uti.Map时,
		处理方法返回时,Map中的数据会自动添加到模型中。
	3.SessionAttributes:将模型中的某个属性暂存到HttpSession中,以便多个请求之间可以共享这个属性。
	4.ModelAttribute:方法的入参标注该注解后,入参的对象就会放到数据模型中。

拦截器:原理:拦截器是基于java反射机制(动态代理)实现

	1.实现HandlerInterceptor接口
	2.在springMvc.xml文件配置
		<mvc:interceptors>
			<mvc:interceptor>
				<mvc:mapping path="/**"/>
				<bean class="自己的拦截器实现类包路径"/>
			</mvc:interceptor>
		</mvc:interceptors>
	3.拦截器中三个方法执行时机:
		perHandle:由DispatcherServle在调用真实方法之前一刻调用所有拦截器的perHandle方法。可以用来做权限和事务。
		postHandle:由DispatcherServle在调用真实方法之后,但渲染视图异常处理之前调用。可以用来做数据和视图修改。
		afterCompletion:由DispatcherServle在渲染视图之后调用

过滤器(Filter):它依赖于servlet容器。在实现上,基于函数回调

视图渲染:

	1.DispatcherServlet拿到业务方法的结果ModelAndView后,
	2.获取view对象,通过forward转发

备注:

	1.springMVC容器可以引用springIOC容器中的bean,但springIOC容器不能引用springMVC中的bean.
	2.springMVC的入口是Servlet,而Strust2是Filter.
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值