美文网首页
07_SpringBoot的web开发

07_SpringBoot的web开发

作者: 对方不想理你并向你抛出一个异常 | 来源:发表于2017-11-11 16:33 被阅读0次

Spring Boot的web开发

spring-boot-autoconfigure-1.5.2.RELEASE.jar中,
Web开发的自动配置类:org.springframework.boot.autoconfigure.web.WebMvcAutoConfiguration

自动配置的ViewResolver


视图的配置mvcProperties对象中:
org.springframework.boot.autoconfigure.web.WebMvcProperties.View
  • application.prrperties中自定义配置prefix
"NoHandlerFoundException" should be thrown if no Handler was found to process a request.
spring.mvc.view.prefix= # Spring MVC view prefix.
spring.mvc.view.suffix= # Spring MVC view suffix.

自动配置静态资源

  • 进入规则为 /
    如果进入SpringMVC的规则为/时,Spring Boot的默认静态资源的路径为:
    spring.resources.static-locations=classpath:/META-INF/resources/,classpath:/resources/,classpath:/static/,classpath:/public/


    静态资源路径
    浏览器访问路径
  • 进入规则为*.xxx 或者 不指定静态文件路径时
    将静态资源放置到webapp下的static目录中即可通过地址访问:


自定义消息转化器

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

    @Bean
    public StringHttpMessageConverter stringHttpMessageConverter(){
        StringHttpMessageConverter converter  = new StringHttpMessageConverter(Charset.forName("UTF-8"));
        return converter;
    }

默认配置:



自定义SpringMVC的配置

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

package cn.huachao.springboot.controller;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import org.springframework.context.annotation.Configuration;
import org.springframework.web.servlet.HandlerInterceptor;
import org.springframework.web.servlet.ModelAndView;
import org.springframework.web.servlet.config.annotation.InterceptorRegistry;
import org.springframework.web.servlet.config.annotation.WebMvcConfigurerAdapter;
@Configuration
public class MySpringMVCConfig extends WebMvcConfigurerAdapter{
    @Override
    public void addInterceptors(InterceptorRegistry registry) {
        HandlerInterceptor handlerInterceptor = new HandlerInterceptor() {
            @Override
            public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception {
                System.out.println("自定义拦截器............");
                return true;
            }
            @Override
            public void postHandle(HttpServletRequest request, HttpServletResponse response, Object handler,
                        ModelAndView modelAndView) throws Exception {
                
            }
            @Override
            public void afterCompletion(HttpServletRequest request, HttpServletResponse response, Object handler,
                    Exception ex)throws Exception {
                
            }
        };
        registry.addInterceptor(handlerInterceptor);
    }

  // 自定义消息转化器的第二种方法
    @Override
    public void configureMessageConverters(List<HttpMessageConverter<?>> converters) {
        StringHttpMessageConverter converter  = new StringHttpMessageConverter(Charset.forName("UTF-8"));
        converters.add(converter);
    }
    
}

相关文章

  • 07_SpringBoot的web开发

    Spring Boot的web开发 在spring-boot-autoconfigure-1.5.2.RELEAS...

  • HTML基础

    新的征程 web前端介绍 web前端开发做什么 pc端web开发;移动端web开发;混合app开发;网页游戏/移动...

  • Web版扫雷开发小记(3)

    前篇: web版扫雷开发小记(1)web版扫雷开发小记(2)web版扫雷开发小记(3)web版扫雷开发小记(4) ...

  • 阿里大牛谈:前端必备知识点!

    web开发是什么??web前端开发薪资有多少?工资高吗?web开发学习路线是什么?Web前端开发工程师是一个很新的...

  • Learn Python 3 :Flask Web开发小记

    最近看了Flask Web开发:基于Python的Web应用开发实战,书中详细介绍了Web程序的开发、测试、部署过...

  • 2018-05-16

    web前端开发 什么是web前端 web前端开发也戏称“web前端开发攻城狮”,目前这个职位也叫“大前端”。这个职...

  • Servlet 学习

    Java web项目结构目录 前言 Java web 是指用Java开发的web项目。Java web开发至今已有...

  • Python这么火,能干什么?这三大主要用途是你必须得知道的!

    01 Web开发 Django和Flask等基于Python的Web框架最近在Web开发中非常流行。 这些Web框...

  • 分享自己使用的网页开发框架

    使用Web开发框架,可以帮助开发者提高Web应用程序、Web服务和网站等Web开发工作的质量和效率。如果没有这些框...

  • node.js笔记2

    web开发框架、koa和koa-router、模板引擎、MVC web开发 Web框架:提供了一套开发和部署网站的...

网友评论

      本文标题:07_SpringBoot的web开发

      本文链接:https://www.haomeiwen.com/subject/supsextx.html