Centos7 生产环境安装 RabbitMQ (单机)
相关站点
系统环境
1 | CentOS Linux release 7.6.1810 (Core) |
更改系统的最大打开文件描述符数
相关站点
系统环境
1 | CentOS Linux release 7.6.1810 (Core) |
更改系统的最大打开文件描述符数
微服务理论的提出者马丁。福勒(Martin Fowler) 在其博客中详细描述了什么是微服务。微服务强调的是服务的大小,它关注的是某一个点,是具体解决某一个问题 / 提供落地对应服务的一个服务应用;狭意的看,可以看作 Eclipse 里面的一个个微服务工程 / 或者 Module。
微服务架构是一种架构模式或者说是一种架构风格,它提倡将单一应用程序划分为一组小服务,每个服务运行在自己的独立进程中,服务间通信采用轻量级通信机制 (通常是基于 HTTP 的 RESTful API)。每个服务都围绕着具体业务进行构建,并且能够被独立地部署到生产环境、类生产环境等。另外,应该尽量避免统一的、集中式的服务管理机制,对具体的一个服务而言,应根据业务上下文,选择合适的语言、工具对其进行构建,可以有一个非常轻量级的集中式管理来协调这些服务,可以使用不同的语言来编写服务,也可以使用不同的数据存储技术。
问题描述:使用
@RequestBody
注解时,抛出异常信息 “Required request body is missing”
采用 SSM 框架,前端将参数传递给后端,SpringMVC 可以通过注解 @RequestBody
将传递参数绑定在 Controller 的方法参数中。此时必须注意,当请求方法声明为 GET 和 DELETE 的时候,HTTP 请求规范里规定是不会有 RequestBody 的,只有请求方法声明为 POST 和 PUT 的时候才有,因此 @RequestBody
不适用于 GET 与 DELETE 方法。还有如果请求方法声明为 GET、DELETE,那么 SpringMVC 可以直接将传递参数绑定在方法的参数中,如果请求方法声明为 POST、PUT,则必须使用注解 @RequestBody
修饰 Controller 中的方法参数,否则无法获取前端传递过来的参数值。正确的使用方法如下:
调用不带参数的 openSession()
方法时,创建的 SqlSession
对象具有如下特性:
值得一提的是,openSession()
方法的 ExecutorType
类型的参数是枚举类型,取值如下:
SIMPLE
:这个执行器类型不做特殊的事情(默认执行器),它会为每个 SQL 语句的执行创建一个新的预处理语句。REUSE
:这个执行器类型会复用预处理语句。BATCH
:这个执行器会批量执行所有更新语句。1 | <dependency> |
MyBatis 的四大对象包括:Executor、StatementHandler、ParameterHandler、ResultSetHandler。四大对象的工作职责如下:
Executor(执行器)
:负责整个 SQL 执行过程的总体控制StatementHandler(语句处理器)
:负责和 JDBC 层交互,包括预编译 SQL 语句和执行 SQL 语句,以及调用 ParameterHandler
设置参数ParameterHandler(参数处理器)
:负责设置预编译参数ResultSetHandler(结果集处理器)
:负责将 JDBC 查询结果映射到 JavaBean 对象