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>
      
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

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

(0)
上一篇 2026年4月14日 下午12:52
下一篇 2026年4月14日 下午12:58


相关推荐

  • linux出现e325错误,用Vim编辑文件时出现E325: ATTENTION错误的解决方法「建议收藏」

    linux出现e325错误,用Vim编辑文件时出现E325: ATTENTION错误的解决方法「建议收藏」用Vim编辑文件时出现E325:ATTENTION错误的解决方法当用Vim编辑一个文件时出现下列错误[root@zabbix~]#vim/usr/local/msmtp/etc/msmtprcE325:ATTENTIONFoundaswapfilebythename”/usr/local/msmtp/etc/.msmtprc.swp”ownedby:rootdat…

    2022年5月20日
    206
  • OpenProcessToken这个函数用法[通俗易懂]

    OpenProcessToken这个函数用法[通俗易懂] GetCurrentProcessID得到当前进程的IDOpenProcessToken得到进程的令牌句柄LookupPrivilegeValue查询进程的权限AdjustTokenPrivileges调整令牌权限要对一个任意进程(包括系统安全进程和服务进程)进行指定了写相关的访问权的OpenProcess操作,只要当前进程具有SeDeDebug权限就可以了。要是一个用户是Admi

    2022年6月25日
    27
  • Java设计模式(十七)之行为型模式:责任链模式

    Java设计模式(十七)之行为型模式:责任链模式

    2021年4月9日
    113
  • 49 使用linux内核源码里的矩阵键盘驱动<GPIO driven matrix keypad support>

    49 使用linux内核源码里的矩阵键盘驱动<GPIO driven matrix keypad support>这个设备驱动适用于,矩阵键盘的每行,每列都是接到一个IO口,行线接的IO口有中断功能.需要在linux内核配置里选上相关的配置。在内核源码目录下:makemenuconfigARCH=armCROSS_COMPILE=arm-linux-gnueabihf-DeviceDrivers—>Inputdevicesupport—>

    2022年5月6日
    143
  • 电商网站的价格大概多少钱一个_电子商务网站报价

    电商网站的价格大概多少钱一个_电子商务网站报价做一个电商网站需要多少钱?一、服务器购买、微信公众号认证、短信接口、物流接口、第三方支付接口费率等等。拿服务器来说,有一般IDC公司的虚拟主机,云虚拟主机、独立ECS,价格会有天壤之别,那具体根据您后期访问用户量和稳定性本身来选择,,几百到几千不等。二、功能开发费用电商平台的主要费用就是根据用户需要哪些功能进行定制开发来评估费用的,这其实又大致分为两大类。第一,必备功能。电商平台里面的必备功能有:会员注册登录、商品分类展示、在线支付购物车、订单管理等。第二、体验功能。体验功能主要是便于电商平台

    2022年10月1日
    4
  • USB设备驱动程序开发框架[通俗易懂]

    USB设备驱动程序开发框架[通俗易懂]USB设备驱动程序开发框架USB设备驱动程序开发框架的源代码文件文件名说明Driver.h驱动程序头文件DrvInit.c入口例程和卸载例程DrvPnp.c即插即用例程DrvDispatch.c分发例程DrvPowe

    2022年8月30日
    7

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

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