MybatisPlus的初步使用
在springBoot裏面使用MybatisPlus的注意事項
1.在項目裏面咱們的dao層的dao不須要本身寫SQL語句,可是須要在mapper繼承一個接口,以及上一個註解@Repository,具體以下代碼
package com.atguigu.mapper; import com.atguigu.entity.User; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import org.springframework.stereotype.Repository; @Repository public interface UserMapper extends BaseMapper<User> { }
2.在啓動類的上面須要有一個註解,@MapperScan(「com.atguigu.mapper」)
//指定要變成實現類的接口所在的包,而後包下面的全部接口在編譯以後都會生成相應的實現類java
package com.atguigu; import org.mybatis.spring.annotation.MapperScan; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; @SpringBootApplication @MapperScan("com.atguigu.mapper") //指定要變成實現類的接口所在的包,而後包下面的全部接口在編譯以後都會生成相應的實現類 public class MpApplication { public static void main(String[] args) { SpringApplication.run(MpApplication.class, args); } }
3.在咱們的配置文件裏面
3.1JDBC註冊驅動須要使用最新的
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
3.2 下面是在配置文件中開啓日誌,咱們能夠在控制檯看見咱們的sql語句
mybatis-plus.configuration.log-impl=org.apache.ibatis.logging.stdout.StdOutImpl
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver spring.datasource.url=jdbc:mysql://localhost:3306/mybatis_plus?serverTimezone=GMT%2B8 spring.datasource.username=root spring.datasource.password=root #下面的這一步是開啓日誌,在日誌文件中能夠看見咱們的sql語句 mybatis-plus.configuration.log-impl=org.apache.ibatis.logging.stdout.StdOutImpl
3.3在這裏咱們特別須要注意的是咱們要加入時區設置,東八區時間,是由於springboot版本更迭緣由。
serverTimezone=GMT%2B8
spring.datasource.url=jdbc:mysql://localhost:3306/mybatis_plus?serverTimezone=GMT%2B8
4,在咱們的JavaBean中咱們的id須要用應用數據類型,例以下面的long類型只能使用一次,第二次就沒法使用了,須要用他的包裝類Long
package com.atguigu.entity; import lombok.Data; /** * @Author Kilig Zong * @Date 2020/10/27 20:17 * @Version 1.0 */ @Data public class User { //注意這個在mybatis_plus中能夠做用在數據庫中,可是類型須要是基本數據類型的包裝類; private Long id; private String name; private int age; private String email; }
5.在咱們的test測試類中咱們須要特別注意咱們的註解,例如@Test還有@Runwith註解以及他們的做用
package com.atguigu; import com.atguigu.entity.User; import com.atguigu.mapper.UserMapper; import org.junit.Test; import org.junit.runner.RunWith; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.boot.test.context.SpringBootTest; import org.springframework.test.context.junit4.SpringRunner; import java.util.List; //這一步是將test環境和spring容器相融合 @RunWith(SpringRunner.class) //提供了一個spring容器環境 @SpringBootTest public class MpApplicationTests { @Autowired private UserMapper userMapper; /*** * @author Kilig Zong * @date 2020/10/27 21:10 * @description * @param * @return void **/ //下面的這個方法是用來查詢全部的用戶 @Test public void testFindAll(){ List<User> users = userMapper.selectList(null); for (User user : users) { System.out.println(user); } } @Test public void testSaveUser(){ User user = new User(); //id是咱們mybatisplus幫咱們生成的,不能是基本數據類型,必須是引用類型 user.setAge(18); user.setName("吳世林"); user.setEmail("12324.@qq.com"); int i = userMapper.insert(user); System.out.println(i); } }