程序员我的程序员自学之路

【微服务】131:最好用的框架SpringBoot

2020-09-06  本文已影响0人  刘小爱

刘小爱自学Java的第131天。

感谢你的观看。

image

今日学习内容安排如下:

一、SpringBoot的引入

Java这门编程语言啊,一直存在一个被很多人诟病的问题:代码臃肿、使用麻烦。

当我们还在辛苦的搭建项目环境时,可能Python程序员已经把代码都快写完了。

你还真别信,现在从零开始搭建一个完整的SSM框架项目环境,少说也要二十来分钟。

究其原因主要是两点:

而SpringBoot就是用来解决这些问题的。

image

SpringBoot是Spring项目中的一个子工程,Spring大家族中的一员。

boot也就是启动的意思,用SpringBoot创建Java应用会简单快速很多。

SpringBoot主要特点如下:

二、SpringBoot快速入门

其中有两种创建方式:一种是手动创建maven工程,一种是使用脚手架自动创建。

这两种方式都非常的简单,我们手动创建:

image

①添加父工程坐标

我们以前是自己创建一个父工程,这里是使用springboot自带的父工程:

spring-boot-starter-parent

使用SpringBoot能解决版本冲突问题。

版本冲突可是一个非常恼人的问题,有一些bug死活都找不出原因,可能就是版本冲突。

②引入依赖

父工程只是起到一个版本管理的作用,项目中具体需要使用到哪些依赖还是要引入。

上述例子中都是SpringBoot根据spring-boot-starter-web这个依赖自动引入的,而且所有的版本都已经管理好,不会出现冲突。

image

③编写启动类

以前要么配置tomcat,要么使用tomcat插件,现在直接在main方法就能启动tomcat。

那需要怎么做呢?

④编写controller类

@RestController也就相当于@Controller加上@ResponseBody,我们可以看它的源码。

image

@ResponseBody作用就是将返回值以JSON数据格式响应给前端。

返回值本来应该是对应一个视图的,比如hello.jsp文件,但是现在普遍都是前后端分离,后端中不需要出现前端代码,所以将响应的数据转换成JSON再响应。

⑤测试

在浏览器上输入对应的访问路径,即可访问到Controller类中的对应方法,页面内容也就是响应的Json数据。

三、Java配置

现在项目中没有任何的xml文件了,那么我们如果要配置一个Bean该怎么办?

1常规Java配置

使用Java配置即可解决这个问题,我们将Java配置和传统的xml配置做一个对比:

image

①编写jdbc配置文件

这不用多说,数据库四大金刚,无论是xml还是Java配置都需要properties配置文件。

②xml配置方式

通过contex:property-placeholder标签引入jdbcp配置文件,再使用${}格式获取。

将德鲁伊数据源配置成spring容器中,同时用property标签完成属性赋值。

③Java配置方式

以上都是见名知意的,知道单词的意思了也就明白其作用了。

2Java配置方式一

image

①application.properties文件

这是SpringBoot默认读取的属性文件名,所以要把jdbc.properties名称改为该名称。

②自动读取

prefix="jdbc"表示读取属性文件中前缀为jdbc的值,所以其四个属性就完成注入了。

该方法就简单了很多,被经常使用,看起来也超级优雅,但是其也有一定的局限性:

配置文件中的属性只能被它一个Bean用

那如何让配置文件中的属性具有通用性呢?

3Java配置方式二

image

①配置一个属性读取类

在类上通过@ConfigurationProperties注解声明当前类为属性读取类。

该类中的成员变量要和配置文件中的属性名一一对应,同时要有getXXX和setXXX方法。

我为了简便就直接使用了lombok插件。

②配置文件中的属性就具有通用性了

任何其它类想使用配置文件中的属性,引入该属性读取类,通过getXXX方法获取即可。

4测试

怎么测试Java配置的属性没有问题呢?

image

我们这边可以使用debug打断点的方法,浏览器中输入路径,接受请求后,可以在控制台中查看dataSource中的属性。

如果出现了上图一样的结果,则表示配置文件中的属性被成功读取了。

最后

谢谢你的观看。

如果可以的话,麻烦帮忙点个赞,谢谢你。

上一篇下一篇

猜你喜欢

热点阅读