SpringMVC简介

在WEB开发中, SpringMVC实现了较为经典的MVC(Model,View,Controller)模式,

组成: 1.Model层(模型层): 管理App中每个功能模块所用到的值和数据.(实体类entity).

2.View层(视图层): 将模型层的数据展示给用户.(页面jsp,html,thymeleaf等..)

3.Controller层(控制层/控制器): 管理页面跳转, 处理用户请求响应逻辑. 也就是管理用 户和视图层交互的. 类似一个齿轮.

SpringMVC 使用 @Controller或@RestController注解的Bean来处理传入的HTTP请求.使用@RestController注解将Http请求映射到相应的控制器中的方法.

以下是@RestController用于提供JSON数据的典型示例

@RestController

@RequestMapping("/user")

public class RestControllerGet(){

@RequestMapping(value="/{user}", method=RequestMethod.GET)

public User getAllUser(){

//.... }

}三层架构与MVC的差异

2.Spring MVC 中的自动配置

SpringBoot提供了适用于大多数应用程序的SpringMVC的自动配置.

自动配置在Spring的默认值之上添加以下功能.1.包含ContentNegotiatingViewResolver bean 和 BeanNameViewResolver bean.

2.支持静态资源的服务,包括对WebJars的支持.

3.自动注册Converter, GenericConverter, Formatter等bean.

4.支持HttpMessageConverters.

5.自动注册MessageCodesResolver.

6.支持静态index.html.

7.支持自定义Favicon .

8.自动使用ConfigurableWebBindingInitializer bean.

1.HttpMessageConverter

Spring MVC 使用HttpMessageConverter接口来转换Http请求和响应. 其默认值提供了开箱即用的功能, 例如, 对象可以自动转换为JSON(使用Jackson库)或XML(如果Jackson XML扩展不可用,则使用JAXB), 字符串默认使用UTF-8进行编码.

如果需要添加或自定义转换器, 可以使用SpringBoot的HttpMessageConverters类.

@Configuration

public class MyConfiguration{

@Bean

public HttpMessageConverters customConverters(){

HttpMessageConverter> additional = ...;

HttpMessageConverter> another= ... ;

return new HttpMessageConverters(additional, another);

}

}

java mediatype属性_SpringMVC 及常用MediaType相关推荐

  1. java mediatype属性_基于ServletRequest实现请求获取内容类型的媒体类型MediaType、字符集Charset的工具类ContentTypeUtil...

    一.源码说明 基于springframework的org.springframework.http.MediaType通过ServletRequest对象分别获取到媒体类型.字符集类型,具体工具类Co ...

  2. springBoot启动失败Caused by: java.lang.ClassNotFoundException: org.springframework.http.MediaType

    异常详情: Error starting ApplicationContext. To display the conditions report re-run your application wi ...

  3. java.lang.NoSuchMethodError: org.springframework.http.MediaType.getCharSet()Ljava/nio/charset/Charse

    java.lang.NoSuchMethodError: org.springframework.http.MediaType.getCharSet()Ljava/nio/charset/Charse ...

  4. nested exception is java.lang.NoSuchMethodError: org.springframework.http.MediaType.getCharset()

    我的代码调用了一个http接口,抛出了如下异常: org.springframework.web.util.NestedServletException: Handler processing fai ...

  5. java 中常用方法_java_中常用的方法总结

    8月1日 练习: 合理覆盖Cat数据类型的,equals()方法 Cat.java 1 覆盖hashCode() 返回的整型值是唯一的 int    hashCode() 用法: 一般使用String ...

  6. Java软件开发中,常用的工具有哪些?

    学习Java知识点不足以用于实践.想要操作,需要知道Java开发工具有哪些.掌握Java开发工具的使用,才能熟练地写出代码编程.可说,没有得心应手的工具,想要做好Java开发,就有了一定的难度,所以今 ...

  7. Java的异常类和常用类、容器

    Java的异常类和常用类.容器 一.Java的异常类 1.异常的概念 2.异常的分类 3.try-catch语句 4.自定义异常类 二.Java的常用类 1.String类 2.StringBuffe ...

  8. java js 速度慢,java js 速度慢jQuery常用知识点总结以及平时封装常用函数

    本文为大家介绍了jQuery中常用知识点及函数,包含许多细节方面的知识,下面我们一起学习一下. jQuery中为我们提供了很多有用的属性,自己总结的一些常用的函数.个人认为在在线排盘开发中会比较常用的 ...

  9. Java开发中的eclispe常用快捷键全部快捷键

    Java开发中的eclispe常用快捷键&全部快捷键 Ctrl+1 快速修复(经典快捷键) Ctrl+D: 删除当前行  Ctrl+Alt+↓ 复制当前行到下一行(复制增加) Ctrl+Alt ...

  10. Atitit.跨语言 java c#.net php js常用的codec encode算法api 兼容性  应该内置到语言里面...

    Atitit.跨语言 java c#.net php js常用的codec encode算法api 兼容性  应该内置到语言里面 1. 常用算法1 1.1. 目录2 1.2. 定义和用法编辑2 1.3 ...

最新文章

  1. 【Unity3D自学记录】判断物体是否在镜头内
  2. 利用单臂路由实验VLAN间路由
  3. scala 连接oracle_一分钟教你学会用java连接Oracle数据库
  4. php 父类中获取子类的名称,php – 在父类中获取子类的名称(静态上下文)
  5. shell 清楚空格_Cygwin系列(五):Shell命令行初体验
  6. 使用javascript来实现最原始的ajax操作
  7. react 组件怎么公用_用 react 做一个跟随组件的 tooltip
  8. 多模态中预训练的演变史
  9. win10同时安装jdk8和jdk11带来的小坑
  10. 计算机快捷键屏幕录制,如何录制电脑屏幕视频-电脑实用快捷键(9页)-原创力文档...
  11. 3dmax 2022卸载方法,怎么完全彻底卸载删除清理干净3dmax 2022各种残留注册表和文件?
  12. 烦哪烦哪烦哪没有力气..
  13. 读取xlsx文件错误
  14. Python3爬虫 爬句子迷
  15. Unity 在2D中实现LookAt
  16. 分析oracle缓慢原因,Oracle SQL执行缓慢的原因分析
  17. 白炽灯护眼还是LED护眼?2022年被央视315表扬的护眼灯
  18. 将student表中的数计学院的学生信息插入到stu表中。数据库批量插入
  19. 「肖战发型适配教程」用python换肖战同款帅气发型俘获少女心就在这了
  20. linux浏览器无法下载,红芯浏览器目前已经无法正常下载到

热门文章

  1. [re入门]IDA和OD的基本使用(持续更新)
  2. 计算机专业的电脑桌面,win7电脑桌面计算机图标不见了怎么办
  3. Web移动端混合开发--IonicFramework
  4. 关于笔记本WLAN(无线)口共享给以太网口
  5. 新浪微博维护工具 推兔刷积分
  6. android 图片3d旋转动画效果,图片UI特效-3D罗盘旋转
  7. Linux开发环境——SCL软件集
  8. 飞翔 noip提高组难度
  9. 全新原装 SD3337C SOP8 丝印HXN 升压DC/DC转换器恒流白光LED驱动
  10. Matlab中hold on与hold off的用法