Web后端开发(SpringBootWeb、HTTP、Tomcat快速入门)

目录

SpringBootWeb入门

Spring

需求:

步骤:

HTTP协议:

概述:

请求协议:

响应协议:

协议解析:

Web服务器-Tomcat:

简介:

基本使用:

SpringBootWeb-入门程序解析:


SpringBootWeb入门

Spring

官网:Spring | Home

Spring形成了一种开发生态圈,Spring提供了若干个子项目,每个子项目用来完成特定的功能

Spring Boot简化了Spring的配置,可以帮助我们非常快速构建应用程序、简化开发、提高效率。

需求:

使用SpringBoot开发一个Web应用,浏览器发起请求/hello后,给浏览器返回字符串"HelloWorld"。

步骤:

1.创建springboot工程,并勾选web开发相关依赖

2.定义HelloController类,添加方法hello,并添加注解。

java 复制代码
@RestController
public class HelloController {
    @RequestMapping("/hello")
    public String hello() {
        System.out.println("hello");
        return "hello";
    }
}

3.运行测试

HTTP协议:

概述:

超文本传输协议,规定了浏览器和服务器之间数据传输的规则。

特点:

1.基于TCP协议:面向连接,安全

2.基于请求-响应模型的:一次请求一次响应

3.HTTP协议是无状态的协议:对于事务处理没有记忆能力。每次请求-响应都是独立的。

缺点:多次请求间不能共享数据。

优点:速度快

请求协议:

请求行:请求数据格式的第一行(请求方式,资源路径,协议)

请求头:第二行开始,格式key:value

请求体:POST请求,存放请求参数

请求头与请求体需要加上空行隔开

响应协议:

响应行:响应数据的第一行(协议、状态码、描述)

响应头:第二行开始,格式key:value

响应体:最后一部分,存放响应数据

协议解析:

概念:超文本传输协议,规定了浏览器和服务器之间数据传输的规则

客户端浏览器,已经被各大厂商提供(自动解析),只需实现服务端(解析客户端发来的请求,并且获取数据,再发送

解析和处理HTTP协议的应用

Web服务器-Tomcat:

简介:

Web服务器是一个软件程序,对HTTP协议的操作进行封装,使得程序员不必直接对协议进行操作,让Web开发更加便捷。主要功能是"提供网上信息浏览服务"。

Tomcat

概念:Tomcat是一个开源免费的轻量级Web服务器,支持Servlet/jSP少量JavaEE规范。

JavaEE:指Java企业开发技术规范总和。

Tomcat也被称为Web容器、Servlet容器。Servlet程序需要依赖于Tomcat才能运行

基本使用:

官网:Apache Tomcat® - Welcome!

下载解压后即为安装完成

**启动:**双击bin\startup.bat

控制台中文乱码:修改conf/logging.properties

关闭:

直接x掉运行窗口:强行关闭

bin\shutdown.bat & Ctrl+C:正常关闭

出现的问题

黑窗口一闪而过:检查JAVA_HOME环境变量是否正确配置

端口号冲突:找到对应程序,将其关闭掉

出现端口占用问题,可以修改Tomcat端口号(conf/server.xml)

XML 复制代码
<Connector port="8080" protocol="HTTP/1.1"
 connectionTimeout="20000" redirectPort="8443"
 maxParameterCount="1000"/>

HTTP协议默认端口号为80,如果将Tomcat端口号改为80,则将来访问Tomcat时,将不用输入端口号。

Tomcat部署项目:

将项目放置到webapps目录下,即部署完成

SpringBootWeb-入门程序解析:

起步依赖:(用依赖传递的特性,把开发某个功能需要的常见依赖聚合在一起)

spring-boot-starter-web 包含了web应用开发所需的常见依赖

官方提供的起步依赖:Spring Boot Reference Documentation

起步依赖的导入不需要版本号,springboot项目已经通过父依赖导入了版本

springboot-web开发环境中已经将tomcat集成进去,所以启动项目时候会自动启动该服务器,该服务器并不是安装的web服务器,而是内嵌Tomcat(所以独立安装的Tomcat使用的很少)

相关推荐
老白干1 小时前
jjwt 0.9.1 在 JDK 11+ 上的两个“坑”与完整解决方案
java·python·log4j
圆山猫7 小时前
[Virtualization](四):Linux KVM/RISC-V 的 vCPU 运行路径
java·linux·risc-v
微学AI8 小时前
一根针指向所有方向:挂谷猜想对 LLM Agent 技能-记忆架构的启示
开发语言·人工智能·架构·挂谷猜想
城管不管8 小时前
ReAct、Plan-and-Execute、Reflection 三大智能 Agent 范式核心区别
java·人工智能·算法·spring·ai·动态规划
IT小白杨8 小时前
从环境制备到自动化工作流:多账号运营的工程化架构拆解
java·经验分享·自动化·安全架构·指纹浏览器
豆瓣鸡8 小时前
算法日记 - Day3
java·开发语言·算法
萧瑟余晖9 小时前
Java深入解析篇九之NIO详解
java·网络·nio
韭菜炒鸡肝天9 小时前
VTK开发笔记(一):VTK介绍,Qt..+VSx+VTK.编译
开发语言·笔记·qt
The Chosen One9859 小时前
高进度算法模板速记(待完善)
java·前端·算法
Aaron - Wistron10 小时前
Web API C# (Furion版)带 单元测试
开发语言·后端·c#