初识SpringBoot

news/2024/5/19 5:14:47/文章来源:https://blog.csdn.net/weixin_45737330/article/details/126930434

文章目录

  • 一、SpringBoot特点
      • 优点
      • 缺点
  • 二、时代背景
      • 1、微服务
      • 2、分布式
        • 分布式的困难
        • 分布式解决
      • 3、云原生
        • 上云的困难
  • 三、快速上手
        • 1、导入依赖
        • 2、创建架构编写业务
          • MainApplication作为主程序应用
          • controller作为业务层
        • 3、修改端口号

一、SpringBoot特点

优点

  • 创建独立Spring应用
  • 内嵌web服务器
  • 自动starter依赖,简化构建配置
  • 自动配置Spring以及第三方功能
  • 提供生产级别的监控、健康检查及外部化配置
  • 无代码生成、无需编写XML

SpringBoot是整合Spring技术栈的一站式框架

SpringBoot是简化Spring技术栈的快速开发脚手架

缺点

  • 迭代快,需要时刻关注变化
  • 封装太深,内部原理复杂,不容易精通

二、时代背景

1、微服务

  • 微服务是一种架构风格
  • 一个应用拆分为一组小型服务
  • 每个服务运行在自己的进程内,也就是可独立部署和升级
  • 服务之间使用轻量级HTTP交互
  • 服务围绕业务功能拆分
  • 可以由全自动部署机制独立部署
  • 去中心化,服务自治,服务可以使用不同的语言,不同的存储技术

2、分布式

分布式的困难

  • 远程调用
  • 服务发现
  • 负载均衡
  • 服务容错
  • 配置管理
  • 服务监控
  • 链路追踪
  • 日志管理
  • 任务调度

分布式解决

  • SpringBoot+SpringCloud

3、云原生

原生应用如何上云,Cloud Native

上云的困难

  • 服务自愈
  • 弹性伸缩
  • 自动化部署
  • 灰度发布
  • 流量治理

三、快速上手

1、导入依赖

<!--父工程-->
<parent><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-parent</artifactId><version>2.7.3</version>
</parent>
<!--Web依赖-->
<dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId>
</dependency>

2、创建架构编写业务

在这里插入图片描述

MainApplication作为主程序应用
@SpringBootApplication
public class MainApplication {public static void main(String[] args) {SpringApplication.run(MainApplication.class,args);}
}
controller作为业务层

HelloController代码如下:

//@RestController = @ResponseBody + @Controller@RestController
public class HelloController {@RequestMapping("/hello")public String test(){return "Hello,SpringBoot2!";}
}

在这里插入图片描述

扩展一下下:

3、修改端口号

在resources包下创建application.properties

server.port=8888

再次访问原地址,已访问不到。这时则需要在网址中更改我们修改后的端口即可!

在这里插入图片描述

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

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

相关文章

WoShop多商户直播短视频APP小程序商城全开源无加密商城源码

WoShop多商户直播短视频APP小程序商城全开源无加密商城源码基于现场直播购物模式&#xff0c;用户可以“边看边买”现场直播商城平台&#xff0c;全终端支持&#xff0c;统一管理后台&#xff0c;传播更强&#xff0c;管理更方便&#xff0c;支持私有化配置&#xff0c;提供系统…

牛视系统源码定制开发come here,抖音矩阵系统。

Seo是Search Engine Optimization的缩写&#xff0c;译成英文的意思是‘浏览器强化’&#xff0c;可能有很多爸爸妈妈就会问了&#xff1a;抖音什么时候沦为了浏览器&#xff1f;他不是一种SNS影视娱乐应用软件吗&#xff1f;假如您还这么想&#xff0c;而且就行不通了&#xf…

5分钟,带你看完24岁60W年薪架构师的简历,上面竟然写着精通JVM

前言 近期&#xff0c;看了一份24岁60W年薪架构师简历&#xff0c;上面写着他的求职意向所掌握的技能....... 所掌握的技能大部分写的都是精通&#xff01;我不禁想问&#xff0c;大佬都这么强吗&#xff1f;你敢在简历上把所有的技能都写精通吗&#xff1f; 简历 下面来带…

mysql事务详解

目录 一、MySQL事务的概念 二、MySQL事务的特点 原子性 一致性 隔离性 事务之间的相互影响 三、MySQL及事务隔离级别 查询全局事务隔离级别 查询会话事务隔离级别 设置全局事务隔离级别 事务控制语句 测试提交事务 测试回滚事务 用别的用户查看这个表&#xff0c;数据已经…

使用容器运行nginx及docker命令介绍

目录 一.使用docker run命令运行Nginx应用 1.观察下载容器镜像过程 查看容器状态 2.访问容器中的nginx服务 1.确认容器的ip地址 2.容器的网络说明 3.访问容器 二.docker命令 1.帮助命令 2.docker run 3.docker ps 4.docker inspect 5.docker exec 6.docker attach 7…

算法分析基础

1 前言 算法分析主要就是从计算资源消耗的角度来评判和比较算法&#xff0c;更高效利用计算资源&#xff0c;或者更少占用计算资源的算法&#xff0c;就是好算法。计算资源主要分为两种&#xff0c;一种是算法解决问题过程中需要的存储空间或内存&#xff0c;另一种是算法的执行…

JRUY-G3交流三相电压继电器

系列型号 JRUY-E3A/D、JRUY-E3B/D、 JRUY-E4A/D、JRUY-E4B/D、 JRUY-E3A/J、JRUY-E3B/J、 JRUY-E4A/J、JRUY-E4B/J、 JRUY-TE3A/D、JRUY-TE3B/D、 JRUY-TE4A/D、JRUY-TE4B/D、 JRUY-TE3A/J、JRUY-TE3B/J、 JRUY-TE4A/J、JRUY-TE4B/J 用途 JRUY-G3数字交流三相电压继电器​ 用于…

如何在一分钟了解jwt

目录 一.session的存储机制 二.jwt的工作原理 三.JWT是什么&#xff1f; 四.为什么使用JWT 五.jwt的运行机制/原理&#xff1a;**** 六.jwt工具类介绍&#xff0c;三种场景 七.jwt与vuex配合在SPA项目中的应用 一.session的存储机制 二.jwt的工作原理 1.原理图&#xf…

现代检测技术--概论

检测技术导论 文章目录检测技术导论测量与检测重要掌握测量方法P3偏差法测量零位法测量微差法测量检测系统的组成补偿结构差动结构测量与检测 测量过程三要素&#xff1a; 测量单位测量方法测量装置 检测是更为意义的测量&#xff0c;其包含测量和信息获取。 检测过程包括测…

Map集合概述和一般使用

1.Map集合 1.1Map集合概述和特点【理解】 Map集合概述 Map代表具有映射关系&#xff08;key-value&#xff09;的集合。 interface Map<K,V> K&#xff1a;键的类型&#xff1b;V&#xff1a;值的类型Map集合的特点 双列集合,一个键对应一个值 键不可以重复,值可以重…

PDF怎么转换成Word?这几个方法可以试试

PDF怎么转换成Word&#xff1f;PDF跟Word都是经常遇到的存储文本信息的文件工具。PDF跟图片的性质有点接近&#xff0c;不容易受外界环境的影响&#xff0c;能在不同的显示器和操作系统中显示出同样的排版效果&#xff0c;但PDF不如Word方便编辑。如果我们想把PDF转成Word该怎么…

maven项目下tomcat使用

1.添加插件<plugin><groupId>org.apache.tomcat.maven</groupId><artifactId>tomcat7-maven-plugin</artifactId><version>2.2</version><configuration><port>8080</port><path>/test</path><uri…

java计算机毕业设计ssm智慧家政在线预约管理系统(源码+系统+mysql数据库+Lw文档)

项目介绍 随着计算机技术的发展&#xff0c;带来社会各行业的进步&#xff0c;信息化逐渐运用到人们的生活中。传统模式的家政服务管理满足不了现代人的生活追求&#xff0c;服务质量、服务速度。随着互联网的理念的发展&#xff0c;为了提供用户方便快捷的家政服务渠道&#…

【Web】HTML

目录 基础部分 web HTML 标签 网页开发工具 VSCode 工具生成骨架标签新增代码 HTML 常用标签 标题标签 段落标签 换行标签 文本格式化标签 盒子标签 图像标签 路径 超链接标签 注释 特殊字符 表格标签 列表标签 表单标签 总结案例 基础部分 网页&#xff…

springboot源码理解六、run方法执行过程(获取启动监听器、构建上下文环境、初始化应用上下文)

run方法执行过程&#xff08;获取启动监听器、构建上下文环境、初始化应用上下文&#xff09;SpringApplication.run获取启动监听器构建上下文环境创建上下文环境配置上下文环境启动对应的监听器初始化应用上下文springboot版本&#xff1a;2.2.9.RELEASE。SpringApplication.r…

干货 | 移动端App自动化之App控件定位

客户端的页面通过 XML 来实现 UI 的布局&#xff0c;页面的 UI 布局作为一个树形结构&#xff0c;而树叶被定义为节点。这里的节点也就对应了我们要定位的元素&#xff0c;节点的上级节点&#xff0c;定义了元素的布局结构。在 XML 布局中可以使用 XPath 进行节点的定位。 App…

C++命名空间详解

文章目录预作用分解符::命名空间如何简单理解::和命名空间呢&#xff1f;在C语言中&#xff0c;当我们在创建变量的时候&#xff0c;总会想一下这个变量名会不会和已有的标识符起冲突&#xff0c;而在C中&#xff0c;随着库的内容越来越丰富&#xff0c;就会有很多的变量、函数…

支撑Java NIO 与 NodeJS的底层技术

众所周知在近几个版本的Java中增加了一些对Java NIO、NIO2的支持&#xff0c;与此同时NodeJS技术栈中最为人称道的优势之一就是其高性能IO&#xff0c;那么我们今天要讨论的话题就是支撑这些技术的底层技术。 开始之前先要提出的一个问题是&#xff1a; 为什么NodeJS和Java NI…

编程高手必学的内存知识04:深入理解静态链接与动态链接

目录 1 概述 1.1 链接的作用 1.2 链接的分类 2 静态链接 2.1 静态链接示例 2.1.1 源码 2.1.2 编译 2.1.3 链接 2.2 静态链接步骤 2.2.1 第1遍扫描&#xff1a;完成目标文件合并 2.2.2 第2遍扫描&#xff1a;完成重定位 2.3 深入分析符号重定位过程 2.3.1 分析方法…

5、学习学习MySQL 创建数据库

MySQL 创建数据库 我们可以在登陆 MySQL 服务后&#xff0c;使用 create 命令创建数据库&#xff0c;语法如下: CREATE DATABASE 数据库名; 以下命令简单的演示了创建数据库的过程&#xff0c;数据名为 RUNOOB: [roothost]# mysql -u root -p Enter password:****** # 登…