创建方式
第一种是创建的时候不选默认的,换成阿里云的,缺点是版本比较低,除此之外要选一个MySql的驱动
第二种是选这个默认的,也要选一个MySql的驱动,在此用这种方式演示
创建完毕后,左上角File----->settings,修改Maven的地址,改成本地的
然后去找mybatis plus的坐标地址:https://mvnrepository.com/
找到之后粘贴到pom.xml里
因为要连接数据库,所以数据库里要有个表,不然就没意义了
然后配置resoures下的application.yml文件,默认是application.properties,我改成了application.yml,在里面连接数据库
spring:
datasource:
driver-class-name: com.mysql.jdbc.Driver
url: jdbc:mysql://localhost:3306/pm
username: root
password: x5
package com.hanbo.pojo;
public class Book {
private Integer id;
private String bookname;
private int bookprice;
private String description;
public Integer getId() {
return id;
}
public void setId(Integer id) {
this.id = id;
}
public String getBookname() {
return bookname;
}
public void setBookname(String bookname) {
this.bookname = bookname;
}
public int getBookprice() {
return bookprice;
}
public void setBookprice(int bookprice) {
this.bookprice = bookprice;
}
public String getDescription() {
return description;
}
public void setDescription(String description) {
this.description = description;
}
@Override
public String toString() {
return "Book{" +
"id=" + id +
", bookname='" + bookname + '\'' +
", bookprice=" + bookprice +
", description='" + description + '\'' +
'}';
}
}
dao:mybatis plus自带一些crud方法,需要继承BaseMapper<泛型>
package com.hanbo.dao;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.hanbo.pojo.Book;
import org.apache.ibatis.annotations.Mapper;
import org.springframework.stereotype.Repository;
@Repository
@Mapper
public interface BookDao extends BaseMapper {
}
package com.hanbo.springbootmp;
import com.hanbo.dao.BookDao;
import com.hanbo.pojo.Book;
import org.junit.jupiter.api.Test;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;
import java.util.List;
@SpringBootTest
class SpringbootMpApplicationTests {
@Autowired
private BookDao bookDao;
@Test
void contextLoads() {
System.out.println(bookDao.selectById(1));
}
@Test
void contextLoads2() {
List books = bookDao.selectList(null);
System.out.println(books);
}
@Test
void contextLoads3() {
Book book=new Book();
book.setBookname("毛概作业集");
book.setBookprice(10);
book.setDescription("等哪天我就一口气把它写完了");
int result = bookDao.insert(book);
System.out.println(result);
}
@Test
void contextLoads4() {
bookDao.deleteById(3);
}
@Test
void contextLoads5() {
Book book=new Book();
book.setId(1);
book.setBookname("Linux操作系统");
book.setBookprice(45);
book.setDescription("又一个要学的课程");
bookDao.updateById(book);
}
}
数据测试前:
1.首先是配置文件里面,把数据库名mp打成了pm
2.mybatis plus里面的方法查询的与实际数据库不符,修改方法应该有,但我还不会,以至于我把实体类和数据库字段都改了
3.给mysql的依赖加个5的版本,8的需要修改配置文件里的驱动和url(好像是加个时区的东西serverTimezone=UTC)
4.添加的时候默认添加了一个很长的id,导致出现异常,需要加个注解,详见mybatis-plus添加数据时id自增问题_歪嘴战神-王德发的博客-CSDN博客_mybatisplus 字段自增
5.主键id必须是Integer类型的