以前写的那篇Spring框架学习笔记(5)——Spring Boot建立与使用,发现有多小细节没有说起,,正好如今又学习了mybatis plus这款框架,打算从新整理一遍,并将细节说清楚html
只须要修改第一个和第二个,下面的其余选项会自动改变java
这一步勾选了以后,spring boot会自动地在pom.xml文件中添加相关对应的第三方开源库的依赖mysql
这里若是不熟悉的话,建议不要勾选mybatis和mysql,这样建立出来的spring boot就能够直接运行而不会报错,spring
以后在浏览器中直接访问localhost:8080就能够看到白页提示,则代表spring boot已经建立成功了,这里在以前那篇博文详细讲解了,具体在这里很少说了sql
这里,官方提示使用了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那一行去掉,不然下面的配置数据库驱动的时候会找不到驱动文件mybatis
能够看到项目中存在的
application.properties
文件,说明spring boot项目中默认使用的配置文件为properties格式,不过还有另外的一种格式支持,那就是yml格式。oracle
yml方式相比properties,支持嵌套,可读性较好,因此我是选用了yml格式app
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驱动便可
根据数据库中的表建立对应的实体类
@Data @ToString public class User { private String userName; private String userPass; }
PS:我数据库中存在一个名为user的表,列名分别为user_name,user_pass,mybatis会自动进行字段的转换
@Component public interface UserMapper extends BaseMapper<User> { }
注意添加注解,让此类被spring容器管理
这里接口继承BaseMapper接口,BaseMapper接口是mybatis plus中提供的接口,里面封装好了一些经常使用的的CRUD操做
这样一来,咱们就不须要书写xml,从而就能够快速地实现了有些基本的CRUD操做了
mapperScan注解会扫描指定包名中的mapper接口文件,并经过spring进行自动装载
@SpringBootApplication @MapperScan("com.wan.shunbang.mapper") public class ShunbangApplication { public static void main(String[] args) { SpringApplication.run(ShunbangApplication.class, args); } }
@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的目录下