SpringMVC基础视频笔记

https://study.163.com/course/courseMain.htm?courseId=1005999006

《课时1》:在web.xml中做如下配置,用DispatcherServlet拦截一切请求:

  <servlet>
  	<servlet-name>springDispatcherServlet</servlet-name>
  	<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
  	<load-on-startup>1</load-on-startup>
  	<init-param>  		
  		<param-name>contextConfigLocation</param-name>
    	<param-value>classpath:springmvc.xml</param-value>
   	</init-param>
  </servlet>
  
  <servlet-mapping>
  	<servlet-name>springDispatcherServlet</servlet-name>
  	<url-pattern>/</url-pattern>
  </servlet-mapping>

上图中如果没有设置contextConfigLocation,则约定路径与文件名为WEB-INF\springDispatcherServlet-servlet.xml。此段可快速自动生成,参考《课时4》第18秒

在springmvc.xml中配置视图解析器:

<bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">
	<property name="prefix" value="/views/"></property>
	<property name="suffix" value=".jsp"></property>
</bean>

一个典型的Controller(Servlet):

import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;

@Controller
public class WelcomeController {
	
	@RequestMapping("welcome")
	public String welcome() {
		return "success";
	}

}

《课时2》:04:14:默认使用请求转发而不是重定向、

《课时4》末尾:用HiddenHttpMethodFilter过滤器,给浏览器增加put/delete请求方式,以实现restful风格的请求

《课时5》28分+:用@RequestHeader获取请求的头信息,用@CookieValue(“JSESSIONID”) String cookieId获取cookie里的信息;45分左右,自动把请求参数绑定为java对象且支持级联属性

《课时6》不完全验证,但应该靠谱的感觉:对被@RequestMapping修饰的方法,

  • 方法如果有参数,此参数会自动绑定原有数据,如public String model(Model m) {...其中的m自动拿到原有的model,调用m.addAttribute方法即可设置request的attribute
  • 方法的返回类型如为String, 则指定view的名字。如果为ModelAndView,则指定去向的模型和视图,但该返回值和方法参数里的Model(如果有的话)没有关系了

对@ModelAttribute的解释太生硬。正确点的可参考@ModelAttribute注解的使用总结:@ModelAttribute最主要的作用是将数据添加到模型对象中,等价于 model.addAttribute(“attributeName”, abc); 被@ModelAttribute注释的方法会在此controller的每个(被注解@RequestMapping修饰的?)方法执行前被执行

《课时7》SpringMVC流程简化如下。详细版的可参考Java面试突击-V3.0.pdf
在这里插入图片描述

《课时8》

  • 12分左右:在@RequestMapping方法中配置请求转发或者重定向方式,如“redirect:/views/success.jsp”,注意此时在springmvc.xml中配置的视图解析器的前后缀无效
  • 27分左右:springMVC项目因为DispatcherServlet拦截了所有请求,会访问不到静态资源。此时可在springmvc.xml中配置<mvc:default-servlet-handler/> 解决。另外也需要<mvc:annotation-driven>,否则会只访问得到静态的,访问不到动态的

《课时9》11:55使用BindingResult避免在前面显示错误

《课时11》使用@ResponseBody返回json数据

《课时15》我手动配SSM一次成功,且正确判断不需要在web.xml中做如下配置:

  <context-param>
    <param-name>contextConfigLocation</param-name>
    <param-value>classpath:applicationContext-*.xml</param-value>
  </context-param>
  <listener>
    <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
  </listener>

《课时16》29:45前后: 用过滤器HiddenHttpMethodFilter支持put,delete

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

qq_23204557

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值