Springboot

Springboot学习

项目要求的技术栈是Springboot+mybatisplus,在见习时用的一直是SSM,不过好在Springboot和SSM很像,可以说是简化版,很快就学会了。

Springboot第一印象就是配置方便,之前配置SSM的时候实在是太烦躁了,xml文件看的眼花缭乱,而且经常遇到版本问题。以至于我宁可用JDBC+三层架构。

而Springboot只需要简单的配yml文件就可以运行起来。

Springboot搭建

image-20210813192807880.png

image-20210813192927410

LomboktemplatemysqlSpring web依赖配置(根据项目需要,自行配置)

image-20210813193149529

image-20210813193202579

image-20210813193211779

20210813193335162][6]![image-

别忘记添加依赖注入

mapper中添加@mapper

SerivceImpl中添加@Service

controller中添加@controller

启动Springboot

在项目目录下的下面创建一个controllerpackage

image-20210814082457871
接着我们在resource\templates 模板目录下创建一个欢迎页的html模板

image-20210814082547920

image-20210814082554512

创建indexController(名字自拟),写一个接口返回我们的index模板

image-20210814082709080

点击启动项目,可以输入 localhost:8080/index,就可以看到欢迎页啦

image-20210814082753771

Springboot启动成功!

可以看到,无需修改任何配置文件,就可以启动项目,这点可以看出Springboot比SSM的启动要方便许多。

顺便说下Springboot的目录结构,其实和SSM一样

image-20210814084214279
一般我会用到的

controller web层,实现和前端交互
mapper 数据库和接口交互
pojo 存放实体
service 用来写业务接口
serviceImpl 业务实现类,写具体的实现方法

yml的配置

在实际项目中,需要用到mysql,在yml中简单的配置一下mysql

修改后缀

image-20210813192630036
.properties修改为.yml

配置mysql:

image-20210814083343553

Lombok

项目里我最常用到的三个

image-20210814083811844

通过注解的形式,编译后会自动生成相应的方法,无需自己手动去添加,方便简洁,看起来舒服。

Mybatisplus

如果不是做项目时同事给我提了一下,我都不知道还有这么方便的东西。

我理解的mybatisplus就是将crud给封装了起来,只要继承就能直接调用,不用写繁琐的xml。

配置

首先我们在pom.xml中手动添加mp的依赖

image-20210814085438278

在Service中继承 IService

image-20210814085551002
在Mapper中继承BaseMapper

image-20210814091527157
在serviceImpl中继承SerivceImpl,实现UserSerivce

image-20210814091627216

常见错误分析

通常看到 xxx.mapper not be found或者是xxx.serivce not be found 一般都是依赖注入有问题,导致没有扫描到。

image-20210814092558751

提示我UserMapper没有找到,但是我加了@Mapper。

原来启动项没有加@MapperScan,导致扫描不到Mapper

使用mybatis-plus的时候调用BaseMapper的方法遇到 not found

千万不要慌。

赶紧检查一下你的Mapper里的imports 是不是下面的这个

import com.baomidou.mybatisplus.core.mapper.BaseMapper;

如果不是,那你把mybaits-plus的依赖错用成了这个

image-20210814132412868

正确的依赖是

image-20210814132437600

posted @ 2021-09-26 21:47  Benki  阅读(36)  评论(0编辑  收藏  举报