Spring boot心得体会

目录

1.Spring boot简介

 1.1.什么是Spring Boot

1.2.为什么要学习Spring Boot

复杂的配置

混乱的依赖管理

1.3.Spring Boot的特点

    1.3.2直接嵌入应用服务器,如tomcat、jetty、undertow等;不需要去部署war包。

    1.3.3提供固定的启动器依赖去简化主键配置;实现开箱即用(启动器starter-其实就是Spring Boot提供的一个jar包),通过自己设置参数(.properies或.yml的配置文件),即可快速使用。

    1.3.4自动的配置Spring和其它有需要的第三方依赖。

    1.3.5提供了一些大型项目中常见的肺功能性特性,如内嵌服务器、安全、指标、健康检测、外部化配置等。

2.建立Spring Boot项目文件

选择配置

pom添加依赖

添加父工程坐标

添加web启动器

管理jdk版本

编写controller

启动测试

打开页面

6.Spring Boot项目部署

总结


1.Spring boot简介

 1.1.什么是Spring Boot

Spring Boot是一个可使用Java构建微服务的微框架。是Spring框架及其社区对“约定优先于配置”理念的最佳实践。Spring Boot的设计目的是让你尽可能快地启动和运行,而无需预先配置Spring。Spring Boot以以一种固定的方式来构建可用于生产级别的应用程序。一般把Spring Boot称为搭建程序的脚手架或者说是便捷搭建基于Spring的工程脚手架。其最主要作用就是帮助开发人员快速的构建庞大的spring项目,并且尽可能的减少一切xml配置,做到开箱即用,迅速上手,让开发人员关注业务而非配置。

设计目的: 用来简化新 Spring 应用的初始搭建以及开发过程。

从最根本上来讲,Spring Boot 就是一些库的集合,它能够被任意项目的构建系统所使用。它使用 “习惯优于配置” (项目中存在大量的配置,此外还内置一个习惯性的配置)的理念让你的项目快速运行起来。用大佬的话来理解,就是 spring boot 其实不是什么新的框架,它默认配置了很多框架的使用方式,就像 maven 整合了所有的 jar 包,spring boot 整合了所有的框架,总结一下及几点:

(1)为所有 Spring 开发提供一个更快更广泛的入门体验。

(2)零配置。无冗余代码生成和XML 强制配置,遵循“约定大于配置” 。

(3)集成了大量常用的第三方库的配置, Spring Boot 应用为这些第三方库提供了几乎可以零配置的开箱即用的能力。

(4)提供一系列大型项目常用的非功能性特征,如嵌入式服务器、安全性、度量、运行状况检查、外部化配置等。

(5)Spring Boot 不是Spring 的替代者,Spring 框架是通过 IOC 机制来管理 Bean 的。Spring Boot 依赖 Spring 框架来管理对象的依赖。Spring Boot 并不是Spring 的精简版本,而是为使用 Spring 做好各种产品级准备
 

1.2.为什么要学习Spring Boot

java一直被人诟病的一点就是臃肿、麻烦。当我们还在辛苦的搭建项目时,可能Python程序员已经把功能写好了,究其原因注意时两点:

复杂的配置

项目各种配置其实是开发时的损耗,因为在思考Spring特性配置和解决业务问题之间需要进行思维切换,所以写配置挤占了写应用逻辑的时间。

混乱的依赖管理

项目的依赖管理也是件吃力不讨好的事情。决定项目里要用哪些库就已经够让人头痛的了,你还要知道这些库的哪个版本和其他库不会有冲突,这实在棘手。而且依赖管理也是种耗损,添加依赖不是写应用程序代码。一旦选错了版本,随之而来的不兼容问题毫无疑问会是生产力杀手。

而Spring Boot让这一切成为过去!

Spring Boot简化了基于Spring的应用开发,只需要“run”就能创建一个独立的、生产级别的Spring应用。Spring Boot为Spring平台及第三方库提供了开箱即用的设置(提供默认设置,存放默认配置的包就是启动器starter),这样我们就可以简单的开始。多数Spring Boot应用只需要很少的Spring配置。我们可以使用Spring Boot创建java应用,并使用java-jar启动它,就可以得到一个生产级别的web工程。

1.3.Spring Boot的特点

    1.3.1创建独立的Spring应用,为所有Spring的开发者提供一个非常快速的、广泛接受的入门体验。

    1.3.2直接嵌入应用服务器,如tomcat、jetty、undertow等;不需要去部署war包。

    1.3.3提供固定的启动器依赖去简化主键配置;实现开箱即用(启动器starter-其实就是Spring Boot提供的一个jar包),通过自己设置参数(.properies或.yml的配置文件),即可快速使用。

    1.3.4自动的配置Spring和其它有需要的第三方依赖。

    1.3.5提供了一些大型项目中常见的肺功能性特性,如内嵌服务器、安全、指标、健康检测、外部化配置等。

    1.3.6没有代码生成,也无需XML配置。

2.建立Spring Boot项目文件

环境准备
(1)JDK 环境必须是 1.8 及以上,传送门:jdk1.8.191 下载
(2)后面要使用到 Maven 管理工具 3.2.5 及以上版本,所以会先介绍 Maven 的安装与配置
(3)开发工具建议使用 IDEA,也可以 MyEclipse,为了实现一站式服务,传送门:
IDEA 破解(原文是PyCharm的,步骤完全一样,Webstorm 也可以破解)
MyEclipse 2018 安装与破解

Spring boot心得体会_第1张图片

选择配置

Spring boot心得体会_第2张图片

pom添加依赖

Spring boot心得体会_第3张图片

Spring Boot提供了一个名为spring-boot-starter-parent的工程,里面已经对各种常用依赖(并非全部)的版本进行了管理,我们的项目需要以这个项目为父工程,这样我们就不用操心依赖的版本问题了,需要什么依赖,直接引入坐标即可

添加父工程坐标

    org.springframework.boot

    spring-boot-starter-parent

    2.1.5.RELEASE

添加web启动器

为了让Spring Boot帮我们完成各种自动配置,我们必须引入Spring Boot提供的自动配置依赖,我们称为 启动器 。因为我们是web项目,这里我们引入web启动器,在 pom.xml 文件中加入如下依赖:

 

     org.springframework.boot

     spring-boot-starter-web

 

需要注意的是,我们并没有在这里指定版本信息。因为Spring Boot的父工程已经对版本进行了管理了。

这个时候,我们会发现项目中多出了大量的依赖。

那些依赖都是Spring Boot根据 spring-boot-starter-web 这个依赖自动引入的,而且所有的版本都已经管理好,不会出现冲突。

管理jdk版本

如果我们想要修改Spring Boot项目的jdk版本我们就在左上角项目文件中找到jdk选择你已经下载的jkd即可

Spring boot心得体会_第4张图片

Spring Boot项目通过main函数即可启动,我们需要创建一个启动类:

Spring boot心得体会_第5张图片

编写controller

Spring boot心得体会_第6张图片

启动测试

Spring boot心得体会_第7张图片

Spring boot心得体会_第8张图片

启动成功后访问localhost:8080/hello,spring-boot-starter-web默认端口号是8080,映射路径是hello。如果启动时出现端口号冲突可以在配置文件中更改端口号

打开页面

我们在浏览器网页输入端口就可以打开页面,测试成功了!

Spring boot心得体会_第9张图片

6.Spring Boot项目部署

将Spring Boot项目使用maven指令打成jar包


1.需要添加打包组件将项目中的资源、配置、依赖打包到一个jar包中;
添加打包组件,要放在dependency外围

Spring boot心得体会_第10张图片

运行完成后找到jar包的位置 

然后打开cmd来运行这个jar包。命令为 java -jar 包名 

Spring boot心得体会_第11张图片

 运行成功之后就可以访问项目中的方法

SpringBoot开发有许多利与弊,下面我将分别进行分析。
利:
创造价值:计算机项目开发可以创造新的软件产品或解决实际问题,为用户或企业带来实际的价值。通过开发创新的软件应用,可以提高工作效率、简化操作流程、改善用户体验等,从而带来更好的业务成果和用户满意度。
技术提升:在计算机项目开发过程中,开发人员需要不断学习和掌握新的技术和工具,提高自己的技术能力。通过项目开发,可以深入了解和应用各种编程语言、框架和开发工具,不断拓宽自己的技术视野,提升自己的技术水平。
团队合作:计算机项目开发通常需要多人协作完成,这促使团队成员之间进行有效的沟通和协作,培养团队合作精神和能力。通过与团队成员合作,可以共同解决问题、分享经验、互相学习,提高团队整体的工作效率和质量。
创业机会:计算机项目开发为创业者提供了机会,他们可以通过开发自己的软件产品或服务,创造自己的商业机会。通过创业,他们可以实现自己的创意和梦想,创造自己的事业和财富。
弊:
高成本:计算机项目开发通常需要投入大量的时间、人力和资金。开发人员需要进行需求分析、设计、编码、测试等多个阶段的工作,这需要耗费大量的资源和精力。同时,项目开发过程中可能会遇到各种问题和挑战,需要不断调整和修正,进一步增加了开发成本。
高风险:计算机项目开发具有一定的风险性。由于技术的不确定性和需求的变化性,项目可能面临进度延误、功能缺陷、用户不满等问题。如果项目无法按时交付或无法满足用户需求,可能会导致项目失败,造成投资的浪费。
复杂性:计算机项目开发通常涉及多个技术领域和复杂的业务逻辑。开发人员需要掌握多种编程语言、框架和工具,同时理解和应用复杂的业务需求。这对开发人员的技术能力和学习能力提出了较高的要求,需要不断学习和更新知识。

总结

首先,Spring Boot的快速开发特性给我留下了深刻的印象。相比于传统的Spring框架,Spring Boot提供了自动化配置和约定大于配置的原则,大大简化了项目的搭建和配置。通过使用Spring Boot,我可以快速地创建一个可运行的、独立的、基于Spring的应用程序。这使得开发过程更加高效,节省了大量的时间和精力。

      Spring Boot的优秀的开发体验让我感到非常舒适。Spring Boot提供了丰富的开发工具和插件,可以帮助我们快速地开发和调试应用程序。例如,Spring Boot的热部署功能可以实时更新代码,无需重启应用程序,大大提高了开发效率。此外,Spring Boot还提供了可视化的管理界面,方便我们查看和监控应用程序的运行状态。

      另外,Spring Boot的强大的生态系统也是我学习过程中的一个亮点。Spring Boot集成了许多常用的开发框架和组件,如Spring MVC、Spring Data JPA、MyBatis等,使得我们可以快速地集成这些框架和组件,减少了重复的开发工作。同时,Spring Boot还提供了丰富的第三方库和插件,可以帮助我们解决各种常见的开发问题,提高了开发效率。

      最后,通过学习Spring Boot,我对微服务架构有了更深入的理解。Spring Boot天生支持微服务架构,通过使用Spring Boot可以快速地构建和部署微服务应用程序。Spring Boot提供了丰富的微服务相关的功能和工具,如服务注册与发现、负载均衡、熔断器等,帮助我们构建健壮、可扩展的微服务应用程序。

    通过这次的Spring Boot课程学习,我深刻体会到了Spring Boot的强大和便捷性。它不仅提供了快速开发的特性,还提供了优秀的开发体验和强大的生态系统。通过学习Spring Boot,我对微服务架构有了更深入的理解。相信在以后课程中,我会愈发熟练,能更好掌握相关知识。

Spring Boot是一个强大而灵活的框架,它简化了Spring应用程序的开发和部署。它的优点包括简化配置、快速开发、微服务支持、自动化测试和丰富的生态系统。然而,它也存在一些缺点,如学习曲线较陡、过于自动化、依赖管理复杂和项目结构规范等。对于熟悉Spring框架的开发者来说,Spring Boot是一个非常有价值的工具,可以帮助他们更快地开发和交付高质量的应用程序。

 spring官网​​​​​​​

你可能感兴趣的:(spring,boot,后端,java)