之前写的那篇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的目录下

版权声明:本文为stars-one原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://www.cnblogs.com/stars-one/p/12256506.html