当前位置: 首页 > news >正文

Javaweb--SpringBoot

1.SpringBoot入门

简化Spring开发的一个框架,Spring Boot 旨在帮助开发者快速搭建 Spring 框架。

整个Spring的一个合集,可以简化配置

2.微服务

(1)微服务就是一种架构风格

(2)微服务就是把一个项目拆分成独立的多个服务,并且多个服务是可以独立运行的,而每个服务都会占用线程。

(3)通过HTTPS的方式进行互通

每一个功能元素都是一个可以独立替换和独立升级的软件单元

微服务 (martinfowler.com)

3.springboot的第一个项目 SpringBoot HelloWorld

目标:浏览器发送hello请求,服务器接受并处理,响应Hello World字符串

操作:1.创建一个maven工程(jar)

           2.导入相关springboot的依赖

  <dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId></dependency>

           3.编写主程序,启动springboot

package com.example.demo;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;@SpringBootApplication
@RestController
public class DemoApplication {public static void main(String[] args) {SpringApplication.run(DemoApplication.class, args);}@GetMapping("/hello")public String hello(@RequestParam(value = "name", defaultValue = "World") String name) {return String.format("Hello %s!", name);}
}

4.编写相关的controller、service等业务逻辑

public class BasicController {@RequestMapping("/hello")@ResponseBodypublic String hello(@RequestParam(name = "name", defaultValue = "unknown user") String name) {return "Hello " + name;}
}

5.运行主程序测试

6.简化部署 直接打包成jar包,用java -jar直接执行

4.yaml的配置

配置文件(springboot使用一个全局配置文件),配置文件名字固定

application.properties

application.yml

application.yaml

配置文件作用:修改springboot自动配置的默认值

标记语言:以前大多数使用 xxx.xml 文件

                  yaml以数据为中心,比josn,xml更适合做配置文件

//yaml配置实例
server:port: 8080
//xml的配置实例
<server><port>8080</port>
</server>

yaml的基本语法

k: v表示一对键值对(k:(空格)v)

以空格的缩进来控制层级关系,只要是左对齐的数据,都是同一层的关系。

//配置实例
server:port: 8080path: /hello

属性和值的大小写也是敏感的

值的写法:

字面量:普通的值(数字,字符串,布尔)

        k: v 字面直接写,字符串不需要添加" "/' '

        " ":不会转义字符串里的特殊字符,特殊字符表达为本身含义

                name: " zhangsan \n lisi" ===> zhangsan (换行)lisi

        ' ' :会转义特殊字符 最后输出为字符串

                name: " zhangsan \n lisi" ===> zhangsan \n lisi

对象、map(属性和值) 键值对

        k; v 在下一行写属性和值的关系,注意缩进

//普通写法
friends: lastName: zhangsanage: 20//行内写法
friends: {lastName: zhangsan,age: 20}

数组(list 、set)

        用-值 来表示数组中的一个元素

pets:-cat-dog-pig//行内写法
pets: [cat,dog,pig]

配置文件的占位符

1.随机数        ${random.value}、${random.int}、${random.long}、${random.int(10)}

2.获取属性配置的值

5.profile

应用所在的运行环境发生切换,配置文件常常就需要随之修改。

Profile:——就是一组配置文件及组件的集合。

1.多profile文件

我们在主配置文件编写的时候,文件名可以是application-{profile}.properties/yml

默认使用application.properties配置

2.yml支持多文档块方式

3.激活指定的profile

        在配置文件中指定要激活的配置

6.自动配置原理

Spring Boot的自动配置功能基于Spring框架的依赖注入(Dependency Injection)和自动装配(Bean Auto-Wiring)机制,通过扫描项目中的依赖和配置文件,自动为应用程序配置所需的Bean。这大大简化了传统Spring应用中的大量手动配置工作。

自动配置原理:

1.springboot在启动时加载主配置类,开启自动配置功能@EnableAutoConfiguration

2.@EnableAutoConfiguration 是 Spring Boot 的一个核心注解,它告诉 Spring Boot 根据添加的 jar 依赖自动配置 Spring 应用程序。这个注解通常与 @SpringBootApplication 一起使用,但实际上,@SpringBootApplication 包括 @Configuration、@EnableAutoConfiguration 和 @ComponentScan

http://www.lryc.cn/news/421192.html

相关文章:

  • 【数据结构】算法的时间复杂度与空间复杂度
  • PyCharm环境python开发上位机
  • ROS 2 参数使用
  • QT的Model-View实现大批量数据展示
  • 2024年8月7日(mysql主从 )
  • 接口/自动化测试 面试集合
  • 菜鸡勇闯第136场双周赛
  • 趋动科技陈飞:从小模型到大模型,AI时代下的数据中心建设
  • yolo v8 + flask部署到云服务器,以及问题记录
  • 【科研必备插件】easyscholar如何使文章显示期刊影响因子与分区等级
  • UE5 UrlEncode转换
  • 【QML】Qt.rgba()的正确使用方法
  • centos7.9 docker安装
  • spring操作数据库
  • Apache Flink中TaskManager,SubTask,TaskSlot,并行度之间的关系
  • 马斯克xAI新计划:人工智能模型Grok 2测试版即将发布
  • 【机器人学】6-4.六自由度机器人运动学参数辨识-机器人精度验证【附MATLAB代码】
  • 分销商城小程序系统渠道拓展
  • WPF篇(14)-ProgressBar进度条+Calendar日历控件+DatePicker日期控件
  • 链表高频题目和必备技巧
  • Vue3详细介绍,正则采集器所用前端框架
  • 数据集--COCO2017(快速下载)
  • 【管理咨询宝藏159】顶级咨询公司人力三支柱建设方案思路
  • 跨时钟域总结
  • 富婆和富公子都在看的负载均衡和Haproxy大全
  • VScode找python环境 (conda)
  • C# Winform序列化和反序列化
  • crc原理概述
  • C++要求或禁止在堆中产生对象
  • 为什么阿里开发手册推荐用静态工厂方法代替构造器?