SpringBoot_01

Spring

https://spring.io/

在这里插入图片描述

SpringBoot可以帮助我们非常快速的构建应用程序、简化开发、提高效率。

SpringBootWeb入门

需求:使用SpringBoot开发一个web应用,浏览器发起请求/hello后,给浏览器返回字符串"Hello World~~~"。

在这里插入图片描述

步骤:

  1. 创建springboot工程,并勾选web开发相关依赖。
  2. 定义HelloController类,添加方法hello,并添加注解。
  3. 运行测试。

创建一个新的模块,注意JDK与Java的版本,还有spring的版本

jdk1.8

Java8

spring2.7.16

在这里插入图片描述

创建请求处理类HelloContoller,添加请求处理方法hello,并添加注解

在这里插入图片描述

运行启动类,打开浏览器测试

在这里插入图片描述

HTTP协议

HTTP-概述

HTTP

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

在这里插入图片描述

  • 特点:
    1. 基于TCP协议:面向连接,安全
    2. 基于请求-响应模型的:一次请求对应一次响应
    3. HTTP协议是无状态的协议:对于事物处理没有记忆能力。每次请求-响应都是独立的。
      • 优点:多次请求间不能共享数据
      • 优点:速度快

HTTP-请求协议

HTTP-请求数据格式

在这里插入图片描述

在这里插入图片描述

  • 请求方式-GET:请求参数在请求行中,没有请求体,如:http://localhost:63342/maven-project-01/springboot-web-quickstart/static/01_GET-POST.html?name=Tom&password=123456,GET请求大小是有限制的。
  • 请求方式-POST:请求参数在请求体中,POST请求大小是没有限制的

HTTP-响应协议

HTTP响应格式

在这里插入图片描述

响应状态码

在这里插入图片描述

状态码描述
200客户端请求成功
404请求资源不存在,一般是url输入有误,或者网站资源被删了
500服务器发生不可预期的错误

英文对应的含义

在这里插入图片描述

状态码大全:https://cloud.tencent.com/developer/chapter/13553

HTTP-协议解析

使用Tomcat

Web服务器-Tomcat

Web服务器

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

在这里插入图片描述

简介

Tomcat

  • 概念:Tomcat是Apache软件基金会一个核心项目,是一个开源免费的轻量级Web服务器,支持Sevlet/JSP少量JavaEE规范。
  • JavaEE:JavaEnterprise Edition,Java企业版。指Java企业级开发的技术规范总和。包含13项技术规范:JDBC、JNDI、EJB、RMI、JSP、Servlet、XML、JMS、Java IDL、JTS、JTA、JavaMail、JAF
  • Tomcat也被称为Web容器、Servlet容器。Servlet程序需要依赖于Tomcat才能运行
  • 官网:https://tomcat.apache.org/
  1. Web服务器
    • 对HTTP协议进行封装,简化web程序开发。
    • 部署web项目,对外提供网上信息浏览服务。
  2. Tomcat
    • 一个轻量级的web服务器,支持servlet、jsp等少量JavaEE规范。
    • 也被称为web容器。servlet容器。

基本使用

不要下载,springboot已经内置了Tomcat

注意事项

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

Tomcat部署项目:

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

入门程序解析

在这里插入图片描述

  • 起步依赖

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

spring-boot-starter-test:包含了单元测试所需要的常见依赖

官方提供的说starter:https://docs.spring.io/spring-boot/docs/2.7.4/reference/htmlsingle/#using.build-systems.starters

在这里插入图片描述

  1. 起步依赖
    • spring-boot-starter-web:包含了web应用开发所需要的常见依赖
    • spring-boot-starter-test:包含了单元测试所需要的常见依赖
  2. 内嵌Tomcat服务器
    " style=“zoom:67%;” />

总结

  1. 起步依赖
    • spring-boot-starter-web:包含了web应用开发所需要的常见依赖
    • spring-boot-starter-test:包含了单元测试所需要的常见依赖
  2. 内嵌Tomcat服务器
    • 基于Springboot开发的web应用程序,内置了Tomcat服务器,当启动类运行时,会自动启动内嵌的Tomcat服务器。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mfbz.cn/a/133287.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

测试人员如何通过AI提高工作效率!

随着AI技术的兴起,像OpenAI推出的ChatGPT、Microsoft发布的Microsoft 365 Copilot、阿里的通义千问、百度的文心一言、华为的盘古大模型等。很多测试人员开始担心,岗位是否会被AI取代?其实取代你的不是AI,而是会使用AI的测试人&am…

基于springboot+vue的校园闲置物品交易系统

运行环境 开发语言:Java 框架:springboot JDK版本:JDK1.8 服务器:tomcat7 数据库:mysql 数据库工具:Navicat11 开发软件:eclipse/myeclipse/idea Maven包:Maven 项目介绍 本文从管…

自动驾驶学习笔记(七)——感知融合

#Apollo开发者# 学习课程的传送门如下,当您也准备学习自动驾驶时,可以和我一同前往: 《自动驾驶新人之旅》免费课程—> 传送门 《Apollo Beta宣讲和线下沙龙》免费报名—>传送门 文章目录 前言 感知融合 卡尔曼滤波 融合策略 实…

NtripShare Mos地铁自动化监测终端盒子硬件设计

自动化监测产品到目前为止做了接近一年,在软件层面上,控制终端软件、平台软件、网平差算法都已解决,硬件盒子始终是心里过不去的坎,最终还是没有耐住性子自己做了一把。 选型如下: 1、主板:瑞芯微RK3568主板。 2、外…

解决《荒野大镖客》提示emp.dll文件丢失问题,总结5个修复方法

在当今数字时代,游戏已经成为人们休闲娱乐的重要方式。作为一名游戏爱好者,笔者在近期体验《荒野大镖客》这款游戏时,遇到了一个令人苦恼的问题——emp.dll文件丢失。这个问题让游戏的无法启动进行。本文将围绕这一问题,探讨其原因…

Leetcode2834. 找出美丽数组的最小和

Every day a Leetcode 题目来源:2834. 找出美丽数组的最小和 解法1:贪心 从最小正整数 1 开始枚举,设当前数为 num,如果 nums 里没有 target - num,就说明可以添加 num,依次填满直到有 n 个数即可。 用…

公开数据集:灵长类动物多通道感觉运动皮层电生理学的研究

Nonhuman Primate Reaching with Multichannel Sensorimotor Cortex Electrophysiology. 1 公开数据集网址:https://zenodo.org/records/3854034 目录 General DescriptionPossible usesVariable namesDecoder ResultsVideosSupplementsContact InformationCitation…

java 类和对象 (图文搭配,万字详解!!)

关于java类和对象,我们要掌握几个重点! 1.类的定义方式以及对象的实例化 2.类中的成员变量和成员方法的使用 3.对象的整个初始化过程 4.封装特性 5.代码块 目录 一、面向对象的初步认识 1.1 什么是面向对象 1.2 面向对象与面向过程 1.2.1传统洗…

Python:词法分析(行结构与显式、隐式行拼接)

相关阅读 Pythonhttps://blog.csdn.net/weixin_45791458/category_12403403.html?spm1001.2014.3001.5482 1、逻辑结构 一个Python程序由许多逻辑行组成,字面意义上的一行指的是末尾有换行符(\n),但在不同的情况下,行末尾的换行符(\n)可能有…

语音识别与自然语言处理(NLP):技术前沿与未来趋势

语音识别与自然语言处理(NLP):技术前沿与未来趋势 随着科技的快速发展,语音识别与自然语言处理(NLP)技术逐渐成为人工智能领域的研究热点。这两项技术的结合,使得机器能够更好地理解和处理人类语…

解析html生成Word文档

内容:读取html文件中的文本内容,然后生成Word文档导出。 事例场景:需求开发完成之后需要写文档(代码修改清单),文档内容就是这次需求修改/新增的所有代码,需要列出修改的文件路径以及代码片段&…

Dart笔记:一些代码生成工具站点的介绍

Dart笔记: 一些代码生成工具站点的介绍 作者:李俊才 (jcLee95):https://blog.csdn.net/qq_28550263 邮箱 :291148484163.com 本文地址:https://blog.csdn.net/qq_28550263/article/details/1343…

力扣138:随机链表的复制

力扣138:随机链表的复制 题目描述: 给你一个长度为 n 的链表,每个节点包含一个额外增加的随机指针 random ,该指针可以指向链表中的任何节点或空节点。 构造这个链表的 深拷贝。 深拷贝应该正好由 n 个 全新 节点组成&#xff…

基于SSM的培训机构运营系统

末尾获取源码 开发语言:Java Java开发工具:JDK1.8 后端框架:SSM 前端:Vue 数据库:MySQL5.7和Navicat管理工具结合 服务器:Tomcat8.5 开发软件:IDEA / Eclipse 是否Maven项目:是 目录…

【3】Gradle-快速入门使用【Gradle概念】

目录 【3】Gradle-快速入门使用【Gradle概念】Gradle任务查看可用任务了解任务探索任务依赖性 依赖关系了解传递依赖关系查看项目依赖项添加版本目录 【可选】 插件使用插件查看插件提供的任务配置插件 增量构建启用缓存使用构建缓存步骤总结 个人主页: 【⭐️个人主页】 需要您…

JVM虚拟机:垃圾回收器之CMS(老年代)

本文重点 在前面的课程中我们学习了Serial和PO垃圾回收器,本文将学习一种新的在老年代使用的垃圾回收器CMS。 特点 CMS收集器是一种以获取最短回收停顿时间为目标的收集器(还是会有短暂的STW),适合互联网或者B/S系统的服务器上,这类应用尤其重视服务器的响应速度,希望…

反转链表 --- 递归回溯算法练习三

目录 1. 分析题意 2. 分析算法原理 2.1. 递归思路: 1. 挖掘子问题: 3. 编写代码 3.1. step 1: 3.2. step 2: 3.3. step 3: 3.4. 递归代码: 1. 分析题意 力扣原题链接如下: 206. 反转链…

巧用ADB安卓调试工具,在双十一直播间轻松回复文字领取优惠!

微信改版了,现在看到我们全凭缘分,为了不错过【全栈工程师修炼指南】重要内容及福利,大家记得按照上方步骤设置「接收文章推送」哦~ 关注回复【学习交流群】加入【SecDevOps】学习交流群! 文章目录: 1.前言简述 描述: 通过前面几篇…

【AICFD案例教程】进气歧管分析

AICFD是由天洑软件自主研发的通用智能热流体仿真软件,用于高效解决能源动力、船舶海洋、电子设备和车辆运载等领域复杂的流动和传热问题。软件涵盖了从建模、仿真到结果处理完整仿真分析流程,帮助工业企业建立设计、仿真和优化相结合的一体化流程&#x…

【那些反爬和反反爬】xpath根据兄弟节点定位元素

其实这篇不涉及什么高大上的反爬,但是实在不知道要把这篇文章归类到哪里,就直接先扔这里吧。 先吐槽一句:萌娘百科绝对是我再也不想爬第二次的网站。 第二句:(真理)把网站弄得越乱越让人摸不着头脑&#…