自动配置的viewResolver
ContentNegotiatingViewResolver
这是一个特殊的ViewResolver,ContentNegotiatingViewResolver不处理自己的view,而是代理给不同的ViewResolver去处理不同的View,所以他的优先级最高
BeanNameViewResolver
控制器会根据返回的字符串名称,去找Bean的名称为返回的字符串的View来渲染视图。
InternalResourceViewResolver
这个是极为常用的ViewResolver,主要通过设置前后缀以及控制器中的方法来返回视图名的字符串,最终得到实际的页面。
配置参考:
/**
*
* @author bijia
* @version $Id: WebDispatcherServletConfigure.java, v 0.1 2019年06月02日 12:23 PM bijia Exp $
*/
@Configuration
@EnableWebMvc
public class WebDispatcherServletConfigure implements WebMvcConfigurer {
@Bean
public ViewResolver viewResolver() {
InternalResourceViewResolver resourceViewResolver = new InternalResourceViewResolver();
resourceViewResolver.setViewClass(JstlView.class);
resourceViewResolver.setPrefix("/WEB-INF/jsp/");
resourceViewResolver.setSuffix(".jsp");
return resourceViewResolver;
}
}
配置遇到个下面问题,报下面错误
Path with "WEB-INF" or "META-INF": [WEB-INF/jsp/index.jsp]
解决办法:https://blog.csdn.net/deoppressoliber/article/details/89204839
自动配置资源
在自动配置类里面定义了addResourceHandlers方法,可以控制资源的访问
- 把类路径为resources 、static、public 以及META-INF/resources文件夹下面的资源直接映射成/** 可以通过http://localhost:8080/** 来访问
- webjar 也就是我们常用的脚本框架封装在jar包里面的jar,更多webjar的内容可以访问:http://www.webjars.org网站,把webjar的META-INF/resources/webjars/下的静态文件映射成/webjar/, 可以通过http://localhost:8080/webjar/
资源配置的更详细配置可以参考博文:https://blog.csdn.net/qq_34797335/article/details/80194137
servlet、filter、interceptor配置
详细的配置说明、使用说明,参考:https://blog.csdn.net/baidu_22254181/article/details/80789101
将tomcat替换成jetty
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
<exclusions>
<!-- Exclude the Tomcat dependency -->
<exclusion>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-tomcat</artifactId>
</exclusion>
</exclusions>
</dependency>
<!-- Use Jetty instead -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-jetty</artifactId>
</dependency>
配置ssl ,使用https
参考博文:https://blog.csdn.net/shouldnotappearcalm/article/details/78047047
https://blog.csdn.net/qq331709114/article/details/80223206
配置Favicon
关闭默认图标
在application.properties中添加:
spring.mvc.favicon.enabled=false
1.将favicon.icon放到resources目录下 例如:/public,/static等等
2.完成上面的步骤还不能显示,还需在你的页面的head标签添加代码
<head>
<meta charset="UTF-8">
<title>登录</title>
<link rel="shortcut icon" th:href="@{/favicon.ico}"/>
<link rel="bookmark" th:href="@{/favicon.ico}"/>
</head>
3.注意我使用的thymeleaf所以是以上代码片段如果你不是请这样添加
<head>
<meta charset="UTF-8">
<title>登录</title>
<link rel="shortcut icon" href="/favicon.ico"/>
<link rel="bookmark" href="/favicon.ico"/>
</head>
websocket实现
websocket需要浏览器支持,如IE10+,Chrome13+,Firefox 6 +
实现参考:https://blog.csdn.net/moshowgame/article/details/80275084