Spring Boot整合Mybatis-Plus步骤+自定义表连接查询方法

  • 步骤

1.创建一个maven项目,引入依赖

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


    
      org.springframework.boot
      spring-boot-starter-web
    

    
    
      mysql
      mysql-connector-java
      5.1.38
    

    
    
      com.baomidou
      mybatis-plus-boot-starter
      2.2.0
    
    
    
      org.freemarker
      freemarker
    

    
    

    
    
    
      com.alibaba
      fastjson
      1.2.15
    

    
      com.alibaba
      druid
      1.1.12
    

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

  

其中Mybatis-plus整合SpringBoot的核心依赖mybatis-plus-boot-starter freemaker模板引擎(或者velocity模板引擎)这两个依赖,

注意:如果没有继承springboot父项目,则一定要写上版本号,否则不知道哪个版本依赖会下载错误

 

2. 使用代码生成器生成代码

在src/main/java下创建一个父包 com.xxx  ,在父包下面创建一个代码生成器的类MpGenerator.java ,然后粘上模板代码点击这里  , 稍微修改一下模板代码,然后执行一下main方法就可以了。

 

3.测试

Mybatis-plus通用CRUD方法的测试使用

 

4.自定义方法

Mybatis-plus是支持自定义方法的,自定义方法直接按Mybatis的定义方法来就行,如果自定义方法需要在实体类中加新的属性,则一定要在这个属性上加上这样一个注解:  @TableField(exist = false)  ,否则使用其通用CRUD方法会报错.加上这个注解会告诉Mybatis-plus这个属性在数据库总没有对应的字段,默认是true,所以新加的属性需要手动改为false。

实体类

@Data
@AllArgsConstructor
@NoArgsConstructor
@Accessors(chain = true)
@TableName("cmfz_article")
public class Article extends Model
{ private static final long serialVersionUID = 1L; private String id; private String title; @TableField("publish_date") @JsonFormat(pattern = "yyyy-MM-dd hh:mm:ss",timezone = "GMT+8") private Date publishDate; @TableField("guru_id") private String guruId; private String content; //查询的时候忽略表字段 @TableField(exist = false) private Guru guru; @Override protected Serializable pkVal() { return this.id; } }

mapper.xml

    
    
        
        
        
        
        
        
            
            
        
    

    
    
        id, title, publish_date AS publishDate, guru_id AS guruId, content
    

    
    

 

你可能感兴趣的:(Mybatis-plus)