• 周六. 10 月 12th, 2024

5G编程聚合网

5G时代下一个聚合的编程学习网

热门标签

【开发篇】10分钟快速上手spring boot

King Wang

1 月 3, 2022

[开发篇]10分钟快速上手spring boot

本次更新springboot入门篇,之后看情况是否有实战篇。话说本周还差两道算法题没做~~~

那么一起踏入学习的海洋中!!!

一、 Spring boot的介绍

Spring是一个开源框架,Spring是于2003 年兴起的一个轻量级的Java 开发框架,由Rod Johnson 在其着作《Expert One-On-
One J2EE Development and
Design》。Spring是为了解决企业级应用开发的复杂性而创建的,使用Spring可以让简单的JavaBean实现之前只有EJB才能完成的事情。但是Spring不仅仅局限于服务器端开发,任何Java应用都能在简单性、可测试性和松耦合性等方面从Spring中获益。

为了降低Java开发的复杂性,Spring采用了以下4种关键策略:

  • 1.基于POJO的轻量级和最小侵入性编程;

  • 2.通过依赖注入(DI)和面向接口实现松耦合;

  • 3.基于切面(AOP)和惯例进行声明式编程;

  • 4.通过切面和模版减少样式代码;

总的来说,spring boot的两个关键点IOCAOP.

二、 快速建立一个spring boot应用

那么,下面将用idea工具来快速建立spring boot应用。

1.建立一个hello world的程序

打开IDEA工具,选择file->new project,来到下图界面,按照流程操作即可。

在项目中新建一个controller的包,并新建一个HelloController类

运行项目,在游览器输入localhost:8080/hello,出现下图界面即可完成。

2.项目配置显示点不一样的

下面,将操作如何配置文件中的变量在类中如何使用。

(1)修改application.yml配置文件

(2)创建配置类

(3)controller中引用

3.配置数据库

接下来,我们要快速进行一次学生的增删改查操作,需要用到数据库,这里用mysql以及spring boot的jpa来完成。

(1)修改pom.xml

在pom.xml中引入spring-jpa以及mysql的依赖包。

<!--配置数据库有关-->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-jpa</artifactId>
</dependency>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
</dependency>

之后选择pom.xml右键选择maven->reimport即可。

(2)修改配置文件application.yml

新建student数据库

在application.yml中配置数据连接用户以及密码,和spring jpa相关的配置

spring:
datasource:
driver-class-name: com.mysql.cj.jdbc.Driver
url: jdbc:mysql://127.0.0.1:3306/student?serverTimezone=UTC&useSSL=false
username: root
password: 123
jpa:
hibernate:
ddl-auto: update
show-sql: true

之后运行spring boot

运行,正常开启即配置正常

(3)数据库表的生成

新建student的entity类

重新运行即可在数据库中自动生成如下表

那么,接下来来到最重点的了,RESTFul AIP的设计。

4.RESTful API

一种软件架构风格、设计风格,而不是标准,只是提供了一组设计原则和约束条件。它主要用于客户端和服务器交互类的软件。基于这个风格设计的软件可以更简洁,更有层次,更易于实现缓存等机制。

(1)设计RESTful API

请求类型 请求路径 功能
POST /student 创建一个学生
GET /student 获取学生列表
GET /student/id 通过id查询学生
PUT /student/id 通过id更新学生
GET /student_special 同时创建两个学生

(2)编写接口

(3)编写学生服务

a.创建学生

b.查询全部学生

c.通过id查询学生

d.通过number更新学生

(4)编写学生的创建的controller

a.创建学生

b.查询学生

c.通过id查询学生

d.通过id来更新

(5)postman发送请求

那么,下面我们用postman这个软件来模拟请求。

a.添加学生

b.查询学生

c.通过id查询学生

d.通过id更新学生

5.超级插班生体验事务

这里我们还想体验一下spring boot的事务管理,那么下面有请我们的超级插班生,小内和小幕。

小内和小幕是双胞胎,被安排要求一起进入学校。

但有个教务处老师手抖了,一不小心就把小幕的入学奖学金设置了好多00000000000000000000000.

最终导致小内入学了,但是小幕没入学,一个没进,另外一个进了

但这样可不行

于是重新在其上加入@Transactional事务注解,即可。

OK,完成了!!!

待会见,下面更新一个spring boot+react的前后端分离的简单demo!!!!

发表回复