005Mybatis返回值(ResultMap 一对多,多对多)

属性

   id 

应该总是指定一个或多个可以唯一标识结果的属性。 虽然,即使不指定这个属性,MyBatis 仍然可以工作,但是会产生严重的性能问题。 只需要指定可以唯一标识结果的最少属性。显然,你可以选择主键(复合主键也可以)

result 

    注入到字段或 JavaBean 属性的普通结果

id/result 内部属性

  Property   映射到列结果的字段或属性 bean

  Column    据表的列名



    
    

javaType

      一个Java类的完全限定名,或一个类型别名。如果映射到一个JavaBean,myBatis通常可以断定类型

typeHandler

   类型处理器。使用这个属性,可以覆盖默认的类型处理器。这个属性值是类的完全限定名或者是一个类型处理器的实现,或者是类型别名。

constructor 

类在实例化时, 用来注入结果到构造方法中

idArg - ID 参数; 标记结果作为 ID 可以帮助提高整体效能

arg - 注入到构造方法的一个普通结果

 

public class User {
        public User(Integer id, String username, int age) {

        }
    }



    
    
    

一对一查询

@Data
public class Account implements Serializable {
    private Integer id;
    private Integer uid;
    private Double money;
    private User user;
}

List findAll1();


    
    
    

    
        
        
        
        
        
    






    
    
    



    
    

一对多

@Data
public class User implements Serializable {
    private Integer userId;
    private String userName;
    private String userAddress;
    private String userSex;
    private Date userBirthday;
    private List accounts;
}

List findAllAccount();


    
    
    
    
    
    
    
        
        
        
    


多对多

多对多关系其实我们看成是双向的一对多关系。

中间表用户角色

005Mybatis返回值(ResultMap 一对多,多对多)_第1张图片

 

@Data
public class Role {
    private Integer roleId;
    private String roleName;
    private String roleDesc;

    //多对多的关系映射:一个角色可以赋予多个用户
    private List users;
}

List findAll();



    
    
    
    
        
        
        
        
        
    


鉴别器

switch 语句



    
    
    
        
        
    





    
    

    

        
            
        

        
            
            
        

        
            
        

        
            
        

    



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