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

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

[开发篇]10分钟快速上手spring boot_第1张图片

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

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

[开发篇]10分钟快速上手spring boot_第2张图片

一、 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应用。

[开发篇]10分钟快速上手spring boot_第3张图片

1.建立一个hello world的程序

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

[开发篇]10分钟快速上手spring boot_第4张图片

[开发篇]10分钟快速上手spring boot_第5张图片

[开发篇]10分钟快速上手spring boot_第6张图片

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

[开发篇]10分钟快速上手spring boot_第7张图片

[开发篇]10分钟快速上手spring boot_第8张图片

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

[开发篇]10分钟快速上手spring boot_第9张图片

[开发篇]10分钟快速上手spring boot_第10张图片

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

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

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

[开发篇]10分钟快速上手spring boot_第11张图片

(2)创建配置类

[开发篇]10分钟快速上手spring boot_第12张图片

(3)controller中引用

[开发篇]10分钟快速上手spring boot_第13张图片

3.配置数据库

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

(1)修改pom.xml

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

[开发篇]10分钟快速上手spring boot_第14张图片



    org.springframework.boot
    spring-boot-starter-data-jpa


    mysql
    mysql-connector-java

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

[开发篇]10分钟快速上手spring boot_第15张图片

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

新建student数据库

[开发篇]10分钟快速上手spring boot_第16张图片

在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

[开发篇]10分钟快速上手spring boot_第17张图片

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

(3)数据库表的生成

新建student的entity类

[开发篇]10分钟快速上手spring boot_第18张图片

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

[开发篇]10分钟快速上手spring boot_第19张图片

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

[开发篇]10分钟快速上手spring boot_第20张图片

4.RESTful API

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

[开发篇]10分钟快速上手spring boot_第21张图片

(1)设计RESTful API

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

(2)编写接口

[开发篇]10分钟快速上手spring boot_第22张图片

(3)编写学生服务

a.创建学生

[开发篇]10分钟快速上手spring boot_第23张图片

b.查询全部学生

[开发篇]10分钟快速上手spring boot_第24张图片

c.通过id查询学生

[开发篇]10分钟快速上手spring boot_第25张图片

d.通过number更新学生

[开发篇]10分钟快速上手spring boot_第26张图片

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

a.创建学生

[开发篇]10分钟快速上手spring boot_第27张图片

b.查询学生

[开发篇]10分钟快速上手spring boot_第28张图片

c.通过id查询学生

[开发篇]10分钟快速上手spring boot_第29张图片

d.通过id来更新

[开发篇]10分钟快速上手spring boot_第30张图片

(5)postman发送请求

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

a.添加学生

[开发篇]10分钟快速上手spring boot_第31张图片

b.查询学生

[开发篇]10分钟快速上手spring boot_第32张图片

c.通过id查询学生

[开发篇]10分钟快速上手spring boot_第33张图片

d.通过id更新学生

[开发篇]10分钟快速上手spring boot_第34张图片

5.超级插班生体验事务

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

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

[开发篇]10分钟快速上手spring boot_第35张图片

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

[开发篇]10分钟快速上手spring boot_第36张图片

[开发篇]10分钟快速上手spring boot_第37张图片

[开发篇]10分钟快速上手spring boot_第38张图片

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

[开发篇]10分钟快速上手spring boot_第39张图片

但这样可不行

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

[开发篇]10分钟快速上手spring boot_第40张图片

[开发篇]10分钟快速上手spring boot_第41张图片

OK,完成了!!!

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

[开发篇]10分钟快速上手spring boot_第42张图片

你可能感兴趣的:(开发篇)