java
public List<User> findAll();
public Set<User> findAllSet();
mapper映射文件
(1)
select id="findAll" resultType="User"
select * from user
/select
(2)
select id="findAllSet" resultType="User"
select * from user
/select
然后我在程序里加了输出类型
第一个返回的是java.util.ArrayList
第二个返回的是java.util.HashSet
我想问MyBatis是怎么知道应该返回List还是Set的,像Hibernate至少还有list,set标签,Query有个list()方法,MyBatis总不至于通过反射接口然后hardcode类型去判断吧
这个不就是根据你接受返回数据的类型决定的吗?你想要返回的集合类型是List的,那就直接使用List接收,要是想要返回的类型是Set,那就使用Set接收就好啦,mybatis会根据你接受数据类型自动匹配的