Spring Boot 学习04-----Spring Boot 开发一个Web应用程序

作者

接着来学习Spring Boot,很焦虑,很彷徨,但是日子还是要过,生活还是要继续,我始终有一颗不服输的心。

Spring Boot 非常适合来开发Web应用。你可以通过Tomcat,Jetty,Undertow或者Netty来创建一个安全的HTTP服务器。大多数Web 应用服务通过引入spring-boot-starter-web模块就可以运行得很快。当然,你也可以通过引入spring-boot-starter-webflux来创建一个灵活的Web应用。

Spring Web MVC Framework

Spring Web MVC Framework 简称为 Spring MVC, 作为一种 “model view controller” Web框架,Spring MVC 让你可以创建特殊@Controller或者@RestController beans 来处理HTTP请求。控制器通过@RequestMapping注解来映射HTTP请求。
以下就是使用@RestController,服务器放回JSON数据

@RestController
@RequestMapping(value="/users")
public class MyRestController {

    @RequestMapping(value="/{user}", method=RequestMethod.GET)
    public User getUser(@PathVariable Long user) {
        // ...
    }

    @RequestMapping(value="/{user}/customers", method=RequestMethod.GET)
    List<Customer> getUserCustomers(@PathVariable Long user) {
        // ...
    }

    @RequestMapping(value="/{user}", method=RequestMethod.DELETE)
    public User deleteUser(@PathVariable Long user) {
        // ...
    }

}

Spring MVC 是Spring Framework的一部分。详细的信息可以参考reference documentation

Spring MVC 的自动配置

Spring Boot为Spring MVC提供了自动配置。适用于大多数的应用
这些自动配置在以下的属性中
1. 包括ContentNegotiatingViewResolver以及BeanNameViewResolver
2. 支持静态资源
3. 自动注册ConverterGenericConverter以及Formatter
4. 支持HttpMessageConverters
5. 自动注册MessageCodesResolver
6. 支持静态的index.html
7. 支持定制化的Favicon
8. 自动的使用ConfigurableWebBindingInitializer
如果你想保持Spring Boot MVC的特性以及你想增加额外的MVC 配置(拦截器,格式化,视图控制器以及其他的属性),
你可以添加你自己的@Configuration 注解作为WebMvcConfigurer,替换@EnableWebMvc。如果你希望提供自定义的RequestMappingHandlerMappingRequestMappingHandlerAdapter或者ExceptionHandlerExceptionResolver,你可以申明一个WebMvcRegistrationsAdapter实例。

HttpMessageConverters

Spring MVC 使用HttpMessageConverters接口来转化HTTP 请求和响应。
例如:实体自动转化为JSON(通过Jackson library)

。。。。。。。。。。。。。。。。。

版权原因,完整文章,请参考如下:

Spring Boot 学习04-----Spring Boot 开发一个Web应用程序

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值