springbootEE读书笔记(2) Spring和SpringBoot基础 之 SpringMVC基础

1、Springmvc

MVC:Model + View + Controller (数据模型 + 试图 + 控制器)

三层架构: Presentation tier + Application tier + Data tier (展现层 + 试图 + 控制层)

 

2、Servlet3.0 在SpringMVC里实现WebApplicationInitializer接口便等同于web.xml

3、json和xml

    //    直接返回对象,对象会自动转换为xml@RequestMapping(value = "/getXml",produces = {"application/xml;charset=UTF-8"})@RequestBodypublic DemoObj getXml(DemoObj obj) {return new DemoObj(obj.getId + 1, obj.getName() + "yy");}

前台访问后显示xml 

2xxyy

 4、静态资源映射

使用@EnableWebMvc开启SpringMVC支持,若无此句,重写WebMvcConfigurerAdapter无效

addResourceLocations 指的是文件放置的目录,addResourceHandler 指的是对外暴露的访问路径

 

5、拦截器配置

Interceptor:实现对一个请求处理前后进行相关的业务处理,类似Servlet的filter

通过继承HandlerInterceptor 类来实现自定义拦截器

1)重写preHandler 方法,在请求发生前执行

 2)重写postHandler 方法,在请求完成后执行

可实现访问请求路径,获取请求时长

重写addInterceptor,注册拦截器

@Bean
public DemoInterceptor demoInterceptor() {return new DemoInterceptor();
}@Override
public void addInterceptors (InterceptorRegistry registry) {registry.addInterceptor(demoInterceptor);
}

6、路径参数配置

路径参数如果带“.”的话, 点后面的值将会被忽略

通过重写configurePathMatch 方法可不忽略“.”后面的参数

@Override
public void configurePathMatch(PathMatchConfigurer configurer) {configurer.setUseSuffixPatternMatch(false);
}

 

7、springmvc的高级配置

1)上传文件配置

 通过MultipartFile file来接收文件, 通过MultipartFile[] files接收多个文件上传

jsp中


@RequestMapping(value = "/upload", method = RequestMethod.POST)
public @ResponseBody String upload(MultipartFile file) {FileUtils.writeByteArrayToFile(new File("e:/upload/" + file.getOriginalFilename()), file.getBytes);return "ok";
}

FileUtils.writeByteArrayToFile 快速写文件到磁盘

 

2)继承abstractHttpMessageConverter接口实现自定义的HttpMessageConverter, 可以自定义媒体类型进行请求

 

3)SSE Server Send Event 服务端发送事件

媒体类型 text/event-stream,这是服务器端SSE的支持

 

4)TDD 测试驱动开发


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部