Spring Boot的web开发

Web开发的自动配置类:org.springframework.boot.autoconfigure.web.WebMvcAutoConfiguration

1.1. 自动配置的ViewResolver

视图的配置mvcProperties对象中:

org.springframework.boot.autoconfigure.web.WebMvcProperties.View

1.2. 自动配置静态资源

1.2.1.   进入规则为 /

如果进入SpringMVC的规则为/时,Spring Boot的默认静态资源的路径为:

spring.resources.static-locations=classpath:/META-INF/resources/,classpath:/resources/,classpath:/static/,classpath:/public/

测试:

1.2.2.   进入规则为*.xxx 或者 不指定静态文件路径时

将静态资源放置到webapp下的static目录中即可通过地址访问:

测试:

1.3. 自定义消息转化器

自定义消息转化器,只需要在@Configuration的类中添加消息转化器的@bean加入到Spring容器,就会被Spring Boot自动加入到容器中。

    @Bean

    public StringHttpMessageConverter stringHttpMessageConverter(){

        StringHttpMessageConverter converter  = new StringHttpMessageConverter(Charset.forName("UTF-8"));

        return converter;

}

默认配置:

1.4. 自定义SpringMVC的配置

有些时候我们需要自已配置SpringMVC而不是采用默认,比如说增加一个拦截器,这个时候就得通过继承WebMvcConfigurerAdapter然后重写父类中的方法进行扩展。

 1 import java.nio.charset.Charset;
 2
 3 import java.util.List;
 4
 5
 6
 7 import javax.servlet.http.HttpServletRequest;
 8
 9 import javax.servlet.http.HttpServletResponse;
10
11
12
13 import org.springframework.context.annotation.Configuration;
14
15 import org.springframework.http.converter.HttpMessageConverter;
16
17 import org.springframework.http.converter.StringHttpMessageConverter;
18
19 import org.springframework.web.servlet.HandlerInterceptor;
20
21 import org.springframework.web.servlet.ModelAndView;
22
23 import org.springframework.web.servlet.config.annotation.InterceptorRegistry;
24
25 import org.springframework.web.servlet.config.annotation.WebMvcConfigurerAdapter;
26
27
28
29 @Configuration //申明这是一个配置
30
31 public class MySrpingMVCConfig extends WebMvcConfigurerAdapter{
32
33
34
35     // 自定义拦截器
36
37     @Override
38
39     public void addInterceptors(InterceptorRegistry registry) {
40
41         HandlerInterceptor handlerInterceptor = new HandlerInterceptor() {
42
43             @Override
44
45             public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler)
46
47                     throws Exception {
48
49                 System.out.println("自定义拦截器............");
50
51                 return true;
52
53             }
54
55
56
57             @Override
58
59             public void postHandle(HttpServletRequest request, HttpServletResponse response, Object handler,
60
61                     ModelAndView modelAndView) throws Exception {
62
63
64
65             }
66
67
68
69             @Override
70
71             public void afterCompletion(HttpServletRequest request, HttpServletResponse response, Object handler,
72
73                     Exception ex) throws Exception {
74
75             }
76
77         };
78
79         registry.addInterceptor(handlerInterceptor).addPathPatterns("/**");
80
81     }
82
83
84
85     // 自定义消息转化器的第二种方法
86
87     @Override
88
89     public void configureMessageConverters(List<HttpMessageConverter<?>> converters) {
90
91         StringHttpMessageConverter converter  = new StringHttpMessageConverter(Charset.forName("UTF-8"));
92
93         converters.add(converter);
94
95     }
96
97
98
99 }
时间: 2024-11-07 23:52:47

Spring Boot的web开发的相关文章

Spring Boot 整合 Web 开发

这一节我们主要学习如何整合 Web 相关技术: Servlet Filter Listener 访问静态资源 文件上传 文件下载 Web三大基本组件分别是:Servlet,Listener,Filter.正常来说一旦我们用了框架,这三个基本就用不上了,Servlet 被 Controller 代替,Filter 被拦截器代替.但是可能在一些特殊的场景下不得不使用这三个基本组件时,Spring Boot 中要如何去引用呢?下面我们来一起学习一下. Spring Boot 集成了 Servlet 容

Spring Boot 05 —— web开发案例

Spring Boot 的一些坑 https://www.jianshu.com/p/3494c84b4be3 国际化: 1)设置首页: 方法1:在controller添加一个请求 @RequestMapping({"/","index.html"}) public String index(){ return "index.html"; } 方法2:设置配置文件  :WebMvcConfigurer  的  addViewControllers

spring boot框架学习6-spring boot的web开发(2)

本章节主要内容: 通过前面的学习,我们了解并快速完成了spring boot第一个应用.spring boot企业级框架,那么spring boot怎么读取静态资源?如js文件夹,css文件以及png/jpg图片呢?怎么自定义消息转换器呢?怎么自定义spring mvc的配置呢?这些我们在公司都需要用的.这些怎么解决呢?在接下来的小节详细讲解这些.好了,现在开启spring boot的web开发第一节 本节主要: 1:InternalResourceViewResolver讲解 2:自动配置静态

spring boot框架学习7-spring boot的web开发(3)-自定义消息转换器

本章节主要内容: 通过前面的学习,我们了解并快速完成了spring boot第一个应用.spring boot企业级框架,那么spring boot怎么读取静态资源?如js文件夹,css文件以及png/jpg图片呢?怎么自定义消息转换器呢?怎么自定义spring mvc的配置呢?这些我们在公司都需要用的.这些怎么解决呢?在接下来的小节详细讲解这些.好了,现在开启spring boot的web开发第一节 本节主要: 1:自定义消息转换器 本文是<凯哥陪你学系列-框架学习之spring boot框架

Spring Boot 企业级应用开发实战

Spring Boot 企业级应用开发实战[下载地址:https://pan.baidu.com/s/1SbB-auGkUN6r2i6dtv7t_w ] Spring Boot是目前Spring技术体系中炙手可热的框架之一,既可用于构建业务复杂的企业应用系统,也可以开发高性能和高吞吐量的互联网应用.Spring Boot框架降低了Spring技术体系的使用门槛,简化了Spring应用的搭建和开发过程,提供了流行的第三方开源技术的自动集成. Spring Boot是由Pivotal团队提供的全新框

Spring Boot 企业级应用开发实战 刘伟东-2018年3月第一版

Spring会自动搜索某些路径下的Java类 并将这些类注册微Bean实例,这样就省去了所有Bean都配置在XML的麻烦 Spring会适当地将显示指定路径下的的类全部注册微Spring Bean . Spring通过使用特殊的注解来标注Bean类 @Component 标注一个普通的Spring Bean类 @Controller 标注一个控制器组件类 @Service 标注一个服务组件类 @Repository 标注一个仓库组件类 甚至SQL语句也可以注解 Spring Boot是伴随着Sp

Spring Boot和JPA开发的一些坑

最近新的项目API接口基于Spring Boot和JPA开发,做了几天的学习和预研,发现使用Spring Boot开发效率上确实比较高,但也碰到了一些小坑,特别记录下. 配置文件问题 ,默认只要一个配置文件application.properties,不要再想ApplicationContent.xml等spring的配置文件了 logback配置文件路径问题,使用绝对路径读取没问题,基于classpath路径则读取不到 ,这个问题有待进一步解决 Spring-boot不能扫描到启动函数包外的b

Spring Boot 整合web层之JSON的使用

Spring Boot对web层进行了一系列的自动化配置,只需要引入web依赖,零配置,就可以直接使用spring  mvc 里面的东西,这篇看一下它对json的自动化配置: 创建一个web项目,勾选web的依赖,就可以看到依赖里面引入了json 在前后端分离的项目中,前后端的交互是通过json格式进行的.那么在Spring Boot中如何使用呢? 我们先看一个消息转化工具(HttpMessageConverter),所用的json生成都离不开它,它的作用: 1.将服务端返回的对象序列化成JSO

spring boot之从零开始开发自己的网站

概述 首先要感谢两位大神,该项目的想法来源自tale和MyBlog,本项目的想法. 做了一些改造,增加了一些功能和一些代码的重构,并且更换了博客主题. 关于项目,对于开发的练手项目,能够工程化,严谨一些. 关于文档,本文主要中从项目需求,项目设计的方式来阐述. 如何从零开始,使用springboot开发项目. 记录一些在开发过程中遇到的一些问题,总结开发技巧 接下来,会以需求和设计方式来阐述 效果图 首页展示 文章编辑 文章管理 项目需求 项目背景 对于刚学习springboot的同学,最好的就