SpringBoot2-[SpringBoot优缺点、微服务理解、版本仲裁]

SpringBoot2-[SpringBoot优缺点、微服务理解、版本仲裁]??‍?博主介绍:大家好,我是芝士味的椒盐,一名在校大学生,热爱分享知识,很高兴在这里认识大家??擅长领域:Java、大数据、运维、电子??如果本文章各位小伙伴们有帮助的话,?关注+??点赞+?评论+?收藏,相应的有空了我也会回访,互助!!!?另本人水平有限,旨在创作简单易懂的文章,在文章描述时如有错,恳请各位大佬指正,在此感谢!!!文章目录Spring.ioSpring5重大升级SpringBoot优点SpringBoot缺点微服务SpringBoot官方文档Maven设置SpringBo..

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE稳定放心使用

在这里插入图片描述

??‍?博主介绍:大家好,我是芝士味的椒盐,一名在校大学生,热爱分享知识,很高兴在这里认识大家?
?擅长领域:Java、大数据、运维、电子
??如果本文章各位小伙伴们有帮助的话,?关注+??点赞+?评论+?收藏,相应的有空了我也会回访,互助!!!
?另本人水平有限,旨在创作简单易懂的文章,在文章描述时如有错,恳请各位大佬指正,在此感谢!!!


Spring.io

在这里插入图片描述

Spring5重大升级

  • 响应式架构和传统spring的SpringMvc项目架构的两套技术栈
    在这里插入图片描述

    • Reactive Stack :使用构建异步数据流响应开发数据访问、响应web开发、响应开发Security安全应用
  • 基于Java8的一些新特性,如:接口默认实现。重新设计源码架构。

SpringBoot优点

  • Create stand-alone Spring applications
  • 创建独立Spring应用
  • Embed Tomcat, Jetty or Undertow directly (no need to deploy WAR files)
  • 内嵌web服务器
  • Provide opinionated ‘starter’ dependencies to simplify your build configuration
  • 自动starter依赖,简化构建配置
  • Automatically configure Spring and 3rd party libraries whenever possible
  • 自动配置Spring以及第三方功能
  • Provide production-ready features such as metrics, health checks, and externalized configuration
  • 提供生产级别的监控、健康检查及外部化配置
  • Absolutely no code generation and no requirement for XML configuration
  • 无代码生成、无需编写XML

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

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

SpringBoot缺点

  • 社区过于活跃,版本迭代太快,需要时刻关注新特性
  • 底层的Spring被封装过深不好挖掘。

微服务

  • 微服务是一种架构风格

  • 一个应用拆分为一组小型服务

  • 每个服务运行在自己的进程内,也就是可独立部署和升级

  • 服务之间使用轻量级HTTP交互

  • 服务围绕业务功能拆分

  • 可以由全自动部署机制独立部署

  • 去中心化,服务自治。服务可以使用不同的语言、不同的存储技术

  • 分布式:

    在这里插入图片描述

    • 分布式解决方案:SpringBoot+SpringCloud

SpringBoot官方文档

在这里插入图片描述
在这里插入图片描述

Maven设置

<!--配置国内镜像源-->
<mirrors>
      <mirror>
        <id>nexus-aliyun</id>
        <mirrorOf>central</mirrorOf>
        <name>Nexus aliyun</name>
        <url>http://maven.aliyun.com/nexus/content/groups/public</url>
      </mirror>
  </mirrors>
 <!--配置编译环境-->
  <profiles>
         <profile>
              <id>jdk-1.8</id>
              <activation>
                <activeByDefault>true</activeByDefault>
                <jdk>1.8</jdk>
              </activation>
              <properties>
                <maven.compiler.source>1.8</maven.compiler.source>
                <maven.compiler.target>1.8</maven.compiler.target>
                <maven.compiler.compilerVersion>1.8</maven.compiler.compilerVersion>
              </properties>
         </profile>
  </profiles>

SpringBoot版本依赖管理、仲裁

  • 因为所有的SpringBoot项目的maven的pom.xml都继承自spring-boot-starter-parent

    <parent>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-parent</artifactId>
            <version>2.3.7.RELEASE</version>
            <relativePath/> <!-- lookup parent from repository -->
    </parent>
    
  • spring-boot-starter-parent继承了org.springframework.boot,该父类即保存了常见的依赖版本实现版本仲裁

    <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-dependencies</artifactId>
        <version>2.3.7.RELEASE</version>
      </parent>
    
    • 部分显示

      <activemq.version>5.15.14</activemq.version>
          <antlr2.version>2.7.7</antlr2.version>
          <appengine-sdk.version>1.9.83</appengine-sdk.version>
          <artemis.version>2.12.0</artemis.version>
          <aspectj.version>1.9.6</aspectj.version>
          <assertj.version>3.16.1</assertj.version>
          <atomikos.version>4.0.6</atomikos.version>
          <awaitility.version>4.0.3</awaitility.version>
          <bitronix.version>2.1.4</bitronix.version>
          <build-helper-maven-plugin.version>3.1.0</build-helper-maven-plugin.version>
          <byte-buddy.version>1.10.18</byte-buddy.version>
          <caffeine.version>2.8.8</caffeine.version>
          <cassandra-driver.version>4.6.1</cassandra-driver.version>
          <classmate.version>1.5.1</classmate.version>
      											.......
      
    • 如此就无需加版本号

      <dependency>
                  <groupId>mysql</groupId>
                  <artifactId>mysql-connector-java</artifactId>
       </dependency>
      
    • 若版本库里的版本号无法满足要求可以如下更改,若库里没有依赖的版本就需要按往常一样添加版本号

      <properties>
              <java.version>1.8</java.version>
              <mysql.version>8.0.22</mysql.version>
      </properties>
      
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/189201.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • netstat命令参数和使用详解

    netstat命令参数和使用详解netstat-Printnetworkconnections,routingtables,interfacestatistics,masqueradeconnections,andmulticastmembershipsnetstat-打印网络连接、路由表、接口统计、伪装连接和多播成员关系参数usage:netstat[-…

  • django models.py(python和django)

    本人java10年开发经验,现就职于电信,因工作需要学习python,记录自己的学习记录。后面也会持续分享真实工作经验,及项目。欢迎大家互关,一起学习!!文章有不严谨的地方请指出1.创建模型类打开pay应用的models.py创建模型类fromdatetimeimportdatetimefromdjango.dbimportmodels#Createyourmodelshere.#创建品牌的模型类classBrand(models.Model):#创建字段

  • idea 激活码 4月 2021【在线注册码/序列号/破解码】

    idea 激活码 4月 2021【在线注册码/序列号/破解码】,https://javaforall.cn/100143.html。详细ieda激活码不妨到全栈程序员必看教程网一起来了解一下吧!

  • SSDP 协议_Smb协议

    SSDP 协议_Smb协议1.组播地址2.SSDP,简单服务发现技术组播地址为了让组播源和组播组成员进行通信,需要提供网络层组播地址,即IP组播地址。同时必须存在一种技术将IP组播地址映射为链路层的组播MAC地址。1.IP组播地址(1)       IPv4组播地址IANA(InternetAssignedNumbersAuthority,互联网编号分配委员会)将D类地址空间分配给IP

    2022年10月11日
  • 2013.09.18《Win7旗舰版序列号》「建议收藏」

    2013.09.18《Win7旗舰版序列号》「建议收藏」TG664-TJ7YK-2VY3K-4YFY6-BCXF4MVG64-RQDVY-KB9RM-MX9WT-MW824TDTY2-6HJ49-46PCK-6HY88-KQXXXFKDJ2-RCXKD-TFW4H-2PTGK-MMMH8H67R8-4HCH4-WGVKX-GV888-8D79BJ4M92-42VH8-M9JWJ-BR7H6-KTFP676RJX-HDXWD-8BYQJ-GR

  • 调用wsdl接口 使用xml格式为参数

    调用wsdl接口 使用xml格式为参数

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号