mybatis的ofType和javaType使用情境

ofType和javaTpye使用情境:

你去看看无论是collection标签还是association标签里面都需要写property这个标签吧?找到collection标签还是association标签所在的xml文件对应的实体类中property标签的值是什么类型的?如果是集合如图一,就用ofType,并且ofType的值是集合中_存储元素_的类型。如果不是集合如图二,就用javaType,并且javaType的值是实体类中属性的类型。

例子如下:

ofType:

①根据property标签所在xml文件,对应到实体类User文件,找到property标签的值
发现property标签的值accounts在User文件中的类型是泛型为Account的List集合
因为是集合,所以选择使用ofType标签(写成集合是因为两个表之间是一对多或者多对多关系,我这里是一个用户可以拥有多个账户,一对多关系)
④集合中存储的元素类型是Account类型,所以ofType的值是account
在这里插入图片描述

JavaType:

好了,现在该你思考了。图给你了,对应着在脑子里过一遍,加深印象!
答案就在图片下方,思考完了再看。
在这里插入图片描述
mybatis
mybatis
mybatis
mybatis
mybatis
mybatis
mybatis
mybatis
mybatis
mybatis

①根据property标签所在xml文件,对应到实体类Account文件,找到property标签的值
②发现property标签的值user在Account文件中的类型是User
③因为不是集合,所以选择使用javaType标签(写成集合是因为两个表之间是一对一关系,我这里是一个账户只属于一个用户,一对一关系)
④user的类型是User,所以ofType的值是User(试了一下,这里大小写不敏感,U是大写小写都可以走下来)。

你可能感兴趣的:(java,java,后端)