Mybatis-Plus(一)--Mybatis-Plus介绍与快速入门

阅读这篇文章之前确保你已经学过springboot和mybatis
一.Mybtis-Plus介绍

【1】Mybatis-Puls(简称MP)是一个MyBatis的增强工具,在MyBatis的基础上只做增强不做改变,为简化开发,提高效率而生。
简单说就是其实很多sql语句它的格式是重复的,如根据id进行删除,根据id进行查询,获取表的所有信息等,这些其实都是只有表名不一样,具体的sql格式相对固定。有了Mybatis-Plus,你只要让dao层接口类继承BaseMapper类就可以了,然后很多功能就可以不用写对应的方法声明和sql语句,直接需要调用即可。
【2】架构
Mybatis-Plus(一)--Mybatis-Plus介绍与快速入门_第1张图片

二.Mybtis-Plus结合springboot快速入门案例

准备先创建数据库和表
Mybatis-Plus(一)--Mybatis-Plus介绍与快速入门_第2张图片
1.创建一个Springboot工程
Mybatis-Plus(一)--Mybatis-Plus介绍与快速入门_第3张图片
2.导入依赖

 



    4.0.0

    
        org.springframework.boot
        spring-boot-starter-parent
        2.1.4.RELEASE
    

    cn.itcast.mp
    itcast-mp-springboot
    1.0-SNAPSHOT

    
        
            org.springframework.boot
            spring-boot-starter
            
                
                    org.springframework.boot
                    spring-boot-starter-logging
                
            
        
        
            org.springframework.boot
            spring-boot-starter-test
            test
        

        
        
            org.projectlombok
            lombok
            true
        
        
        
            com.baomidou
            mybatis-plus-boot-starter
            3.1.1
        
        
        
            mysql
            mysql-connector-java
            5.1.47
        
        
            org.slf4j
            slf4j-log4j12
        

    

    
        
            
                org.springframework.boot
                spring-boot-maven-plugin
            
        
    



3.编写配置
application.properties:

spring.application.name = itcast-mp-springboot

spring.datasource.driver-class-name=com.mysql.jdbc.Driver
spring.datasource.url=jdbc:mysql://127.0.0.1:3306/mp?useUnicode=true&characterEncoding=utf8&autoReconnect=true&allowMultiQueries=true&useSSL=false
spring.datasource.username=root
spring.datasource.password=Aa123456

log4j.properties:

log4j.rootLogger=DEBUG,A1
log4j.appender.A1=org.apache.log4j.ConsoleAppender
log4j.appender.A1.layout=org.apache.log4j.PatternLayout
log4j.appender.A1.layout.ConversionPattern=[%t] [%c]-[%p] %m%n

4.编写pojo类

@Data
@NoArgsConstructor
@AllArgsConstructor
//这个注解一定要写,因为没有了sql语句,靠它来指定对应的mapper是查询哪张表
@TableName("tb_user")
public class User {
    private Long id;
    private String userName;
    @TableField(select = false) //查询时不返回该字段的值
    private String password;
    private String name;
    private Integer age;
    @TableField(value = "email") //指定数据表中字段名
    private String mail;
    @TableField(exist = false)
    private String address; //在数据库表中是不存在的
}

5.编写mapper

@Mapper
public interface UserMapper extends BaseMapper {
}

6.编写启动类

//MapperScan("cn.itcast.mp.mapper")
//如果mapper接口上面没有写mapper注解,就要添加上面这个注解
@SpringBootApplication
public class MyApplication {
    public static void main(String[] args) {
        SpringApplication.run(MyApplication.class, args);
    }
}

7.编写测试用例

@RunWith(SpringJUnit4ClassRunner.class)
@SpringBootTest
public class TestMybatisSpringBoot {
    @Autowired
    private UserMapper userMapper;//注意测试类要和dao层文件夹平级,不然会报错。
    @Test
    public void testSelectList(){
        List users = this.userMapper.selectList(null);//打印表的所有内容
        for (User user : users) {
            System.out.println(user);
        }
    }
}

我们可以看到,有了mabatis-plus,我们就不用去声明selectList方法,也不用使用注解或建立对应的mapper.xml去书写对应的sql语句。直接将mapper类继承BaseMapper 就可以直接调用父类的selectList方法实现获取表的所有内容这个功能。
mybatis-plus+mybatis和mybatis-plus+mybatis+spring与mybatis-plus+mybatis+springboot可能代码写发有所不同,但是也是这种简化,就是继承BaseMapper 就可以直接调用父类里面已经定义的方法,而不用自己去定义方法和书写对应的sql语句。

 

你可能感兴趣的:(mybatis,java,开发语言)