1.HTTP协议中请求协议的数据格式及响应协议的数据格式,请详细说明。
请求数据格式:
请求行:包括请求方式,请求路径,协议版本
请求头:第二行开始,以key:value形式出现的键值对
请求体:发送的数据体(POST,PUT请求)。请求头和请求体之间有一个空行。
响应数据格式:
相应行:协议版本,状态码,状态消息
响应头:第二行开始,以key:value形式出现的键值对
响应体:服务器返回的数据体。响应头和响应体之间有一个空行。
2.HTTP的状态码分为哪几类,分别代表什么意思
1xx:响应中
2xx:成功状态码
3xx:重定向状态码
4xx:客户端错误状态码
5xx:服务端错误状态码
200:成功
401:未认证(未登录)
404:客户端错误,请求路径找不到
500:服务端异常
3.什么是控制反转IOC,以及什么是依赖注入DI
IOC:控制反转。对象的创建控制权有程序自身转移到外部(容器)中,这种思想称为控制反转。
对象的创建权由程序员主动创建转移到容器(由容器创建,管理对象)。这个容器称为IOC容器或Spring容器。
DI:依赖注入。容器为应用程序提供运行时,所依赖的资源,称之为依赖注入。
4.Spring中声明Bean的注解有哪些,分别用在什么地方呢? 使用了这个注解声明bean,这个bean就一定会生效吗?
声明bean的注解:
@Component:泛用组件
@Service:业务逻组件,标注在业务层类上
@Repository:数据访问层组件,标注在数据访问层类上(由于与mybatis整合,用的少)
@Controller:控制器组件,标注在控制层类上
@Bean:加在方法上,spring会将方法的返回值,声明为IOC容器的Bean
不一定,取决于组件扫描范围。启动类上加的注解
@ComponentScan是组件扫描,包含在@SpringBootApplication具备组件扫描的作用,但默认扫描的时启动类所在包及其子包。