之前写的那篇Spring框架学习笔记(5)——Spring Boot创建与使用,发现有多小细节没有提及,,正好现在又学习了mybatis plus这款框架,打算重新整理一遍,并将细节说清楚

1.通过IDEA创建spring boot

2.项目相关配置

只需要修改第一个和第二个,下面的其他选项会自动改变

3.勾选需要的库

这一步勾选了之后,spring boot会自动地在pom.xml文件中添加相关对应的第三方开源库的依赖

这里如果不熟悉的话,建议不要勾选mybatis和mysql,这样创建出来的spring boot就可以直接运行而不会报错,

之后在浏览器中直接访问localhost:8080就可以看到白页提示,则表明spring boot已经创建成功了,这里在之前那篇博文详细讲解了,具体在这里不多说了

4.添加mybatis plus依赖

这里,官方提示使用了mybatis plus,则不要使用mybatis的依赖,防止冲突

所以,我们使用下面的依赖把原来的mybatis-spring-boot-starter那个依赖给替换掉

<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-boot-starter</artifactId>
<version>3.3.1.tmp</version>
</dependency>

我们还需要把依赖中的mysql-connector-java中的runtime那一行去掉,否则下面的配置数据库驱动的时候会找不到驱动文件

5.配置application.yml文件



可以看到项目中存在的application.properties文件,说明spring boot项目中默认使用的配置文件为properties格式,不过还有另外的一种格式支持,那就是yml格式。

yml方式相比properties,支持嵌套,可读性较好,所以我是选用了yml格式

server:
port: #端口号,默认不写就是8080
servlet:
context-path: #项目上下文,必须要以“/”开头
spring:
datasource:
username: #数据库用户名
password: #数据库密码
url: jdbc:mysql://localhost:3306/mofang?useUnicode=true&characterEncoding=UTF-8
driver-class-name: com.mysql.cj.jdbc.Driver #直接打mysql会有提示 #showSql日志输出,根据自己的包名进行修改
logging:
level:
com:
example:
mapper : debug

PS:注意,yml格式中,冒号后面需要空格

如果是使用oracle,则在之前勾选oracle驱动即可

6.建立实体类

根据数据库中的表创建对应的实体类

@Data
@ToString
public class User {
private String userName;
private String userPass;
}

PS:我数据库中存在一个名为user的表,列名分别为user_name,user_pass,mybatis会自动进行字段的转换

7.创建mapper接口文件

@Component
public interface UserMapper extends BaseMapper<User> { }

注意添加注解,让此类被spring容器管理

这里接口继承BaseMapper接口,BaseMapper接口是mybatis plus中提供的接口,里面封装好了一些常用的的CRUD操作

这样一来,我们就不需要书写xml,从而就可以快速地实现了有些基本的CRUD操作了

8.添加MapperScan注解

mapperScan注解会扫描指定包名中的mapper接口文件,并通过spring进行自动装载

@SpringBootApplication
@MapperScan("com.wan.shunbang.mapper")
public class ShunbangApplication { public static void main(String[] args) {
SpringApplication.run(ShunbangApplication.class, args);
} }

9.测试

@SpringBootTest
public class UserTest {
@Autowired
private UserMapper userMapper; @Test
void testInsert() {
List<User> users = userMapper.selectList(null);
for (User user : users) {
System.out.println(user.toString());
}
}
}

测试文件我是放在了test的目录下

Spring框架学习笔记(8)——spring boot+mybatis plus+mysql项目环境搭建的更多相关文章

  1. Spring框架学习笔记(5)——Spring Boot创建与使用

    Spring Boot可以更为方便地搭建一个Web系统,之后服务器上部署也较为方便 创建Spring boot项目 1. 使用IDEA创建项目 2. 修改groupid和artifact 3. 一路n ...

  2. Spring框架学习笔记(1)

    Spring 框架学习笔记(1) 一.简介 Rod Johnson(spring之父) Spring是分层的Java SE/EE应用 full-stack(服务端的全栈)轻量级(跟EJB比)开源框架, ...

  3. Spring框架学习笔记(3)——SpringMVC框架

    SpringMVC框架是基于Spring框架,可以让我们更为方便的进行Web的开发,实现前后端分离 思路和原理 我们之前仿照SpringMVC定义了一个自定义MVC框架,两者的思路其实都是一样的. 建 ...

  4. 手写Spring框架学习笔记

    以下是咕泡公开课的学习笔记 一.创建工程springdemo 二.在pom中配置servlet <dependency> <groupId>javax.servlet</ ...

  5. spring框架学习笔记7:事务管理及案例

    Spring提供了一套管理项目中的事务的机制 以前写过一篇简单的介绍事务的随笔:http://www.cnblogs.com/xuyiqing/p/8430214.html 还有一篇Hibernate ...

  6. Spring框架学习笔记(1)——控制反转IOC与依赖注入DI

    Spring框架的主要作用,就是提供了一个容器,使用该容器就可以创建并管理对象.比如说Dao类等,又或者是具有多依赖关系的类(Student类中包含有Teacher类的成员变量) Spring有两个核 ...

  7. Spring框架学习笔记(4)——SSM整合以及创建Maven自定义模版

    Spring+Spring MVC+MyBatis+Maven SSM整合的核心还是Spring+MyBatis的整合,回顾一下MyBatis操作数据库流程,我们是使用一个SQLSessionFact ...

  8. Spring框架学习笔记(1)——HelloWorld

    1.创建一个新的项目,并添加Spring框架 2.创建HelloWorld.java package com.broadtext.beans.helloworld; public class Hell ...

  9. spring框架学习笔记4:SpringAOP实现原理

    AOP AOP(Aspect Oriented Programming),即面向切面编程,可以说是OOP(Object Oriented Programming,面向对象编程)的补充和完善.OOP引入 ...

随机推荐

  1. C++Review4_代码的组织

    当一个项目越来越大,代码该如何组织?C++组织程序的策略是什么?遇到类.变量.函数的重名问题该如何解决? =============================================== ...

  2. 关于在vuejs中动态加载不确定数量和内容的组件的解决方案

    在做一个门户项目的时候,客户要求需要进行私人化定制,每个人进入首页的时候可以自定义首页显示的版块 要在4.50个组件中显示随机N个组件按照每个人选定的顺序排列.需求说完了,接下来说说解决方案: htm ...

  3. 使用springboot + druid + mybatisplus完成多数据源配置

    一. 简介 1. 版本 springboot版本为2.0.3.RELEASE,mybatisplus版本为2.1.9, druid版本为1.1.9,swagger版本为2.7.0 2. 项目地址   ...

  4. mysql主从之多线程复制

    多线程复制 mysql 主从复制原理: 1. master 节点上的binlogdump 线程,在slave 与其正常连接的情况下,将binlog 发送到slave 上. 2. slave 节点的I/ ...

  5. 使用eclipse创建第一个SpringBoot项目

    1.new->maven->maven project,   勾选 Create a simple project,  下一个页面中填入group id(项目组织唯一标识, 如org.ap ...

  6. Google 开源的 Python 命令行库:深入 fire(二)

    作者:HelloGitHub-Prodesire HelloGitHub 的<讲解开源项目>系列,项目地址:https://github.com/HelloGitHub-Team/Arti ...

  7. 从头学pytorch(十四):lenet

    卷积神经网络 在之前的文章里,对28 X 28的图像,我们是通过把它展开为长度为784的一维向量,然后送进全连接层,训练出一个分类模型.这样做主要有两个问题 图像在同一列邻近的像素在这个向量中可能相距 ...

  8. 02_jQuery 验证密码是6位或者8位纯数字

    var reg = new RegExp(/^\d{8}$/); //工作密码必须是8位数字 if(!reg.test("12544444").val())) { alert(&q ...

  9. TVP思享 | 四个全新维度,极限优化HTTP性能

    导语 | 当产品的用户量不断翻番时,需求会倒逼着你优化HTTP协议.那么,要想极限优化HTTP性能,应该从哪些维度出发呢?本文将由TVP陶辉老师,为大家分享四个全新维度.「TVP思享」专栏,凝结大咖思 ...

  10. 二次排序LincodeNo.846

    846.Multi-keyword Sort 题目要求在已经排序好的序列上进行二次排序 那么改变一下比较方法即可 bool cmp(vector<int> a,vector<int& ...