SpringBoot入职学习

一、前言

公司入职,第一个事是把公司项目运行起来。然后在经过几天的颠沛流离,遇到一个事情。在创建yml文件的时候,需要设置自己的配置文件。当然还是先跑起来项目,就使用别人的yml文件。但是,到springboot配置那里卡住了。我没学过springboot。不会用。

问题就在这:

意识到,我应该系统化的学习一下springboot。

二、什么是spring boot?

Spring Boot 是由 Pivotal 团队提供的基于 Spring 的全新框架,旨在简化 Spring 应用的初始搭建和开发过程。它是一个快速开发的框架,能过快速整合第三方框架,它的基本原来是 Maven 依赖关系,Maven 的集成,完全采用注解化,简化 XML 配置,内嵌 HTTP 服务器(Tomcat,Jetty),默认嵌入 Tomcat,最终以 Java 应用程序进行执行。Spring Boot 是开发者和 Spring 本身框架的中间层,帮助开发者统筹管理应用的配置,提供基于实际开发中常见配置的默认处理(即习惯优于配置),简化应用的开发,简化应用的运维;总的来说,其目的 Spring Boot 就是为了对 Java web 的开发进行“简化”。

三、开始第一个项目

官网步骤:

需要学会看英文的官方文档。这是官方给出的第一个spring Boot 应用的步骤:

POM,在前面Maven学习了,它其实就是一个坐标。 在IDEA里面,就是需要指定仓库地址,Maven的settings.xml文件。

 POM( Project Object Model,项目对象模型 ) 是 Maven 工程的基本工作单元,是一个XML文件,包含了项目的基本信息,用于描述项目如何构建,声明项目依赖,等等。

Adding Classpath Code: 

 

 第三步:编写业务。

有两个java程序:一个是helloworld,一个是主程序。注意他们的位置区别。

主程序:@SpringBootApplication

业务程序helloworld:

@RestController   //相当于两个注释合在一起的作用。让return 返回字符串而不是页面。

@RequestMapping("/hello")    //这个是页面。默认是:localhost:8080/hello。

这个业务代码需要牢记,参考博客:

Spring Boot 2 学习笔记(1 / 2)_巨輪的博客-CSDN博客

第四步:运行代码。

第五步:Creating an Executable jar

创建jar包的好处就是:可以通过java -jar的方式运行发布在web服务器的业务。

 需要注意的是,使用前提:

后面还有一个配置,application.properties文件。这个文件,其实就是我们前言里面遇到的yml文件。其中application前缀不能改。它的作用是相当于我们在SSM学习里面的pom.xml或者是web.xml文件。简化了很多代码量!!!

思考实验:

需要比较SSM里面,Spring Boot简化了哪些代码量!

四、了解自动配置的原理

在开发第一个helloworld的项目之后,我们需要了解JavaBoot的自动配置原理。

 依赖管理特性:

父项目做依赖管理:标签是<parent> 。只要这个声明了版本号,后续的依赖<dependency>都不要在声明版本号,进行了自动版本仲裁。

开发导入starter场景启动器:

它在依赖<dependency>里面,用spring-boot-starter-*表示。*表示某种场景。它的用处是只要声明了这个场景,后续所有有关的依赖都不需要添加。具体它这个依赖包含了哪些依赖可以使用ctrl查看。就比如:上述hellworld项目,只使用了spring-boot-start-web这个场景启动器。但是包含了很多依赖,就不用像之前SSM的学习一个一个导入。

查看场景包含的依赖:

无需关注本版号,自动版本仲裁;

可以修改版本号:在<properties>标签里面。

<properties> <mysql.version>5.1.43</mysql.version> </properties>

扩展:<properties>标签的作用,它属于Maven的知识。方便maven依赖标签用${变量名}的形式动态获取版本号。

思考区别:

parent的作用和starter场景的区别:

然后我的公司使用的<parent>是以公司自己的名称命名的。也就是说,如果使用打包。只要运行我这个公司的这个父项目就能达到要求。()

自动配置特性:

自动配好Tomcat。

其实就是上面那个starter场景启动器,导入这个之后,能自动配好。

自动配好SpringMVC。

原理同上,它能引入注册MVC的组件。

自动配好web常见功能,比如:字符编码,可以允许中文。

默认包结构,在我们写好主程序之后,主程序同级或者之下的Java程序可以自动扫描进去。而不用像之前SSM一样,指定扫描器。虽然这里也可以指定扫描器。但是不用新建文件。

改变扫描路径:。

  • @SpringBootApplication(scanBasePackages=“com.lun”)


没有spring基础,不适合学习这门课程。需要停一下。

猜你喜欢

转载自blog.csdn.net/qq_55928086/article/details/132189551