mybatis使用Set接受返回的entity集合
1.测试原因
说明:因为每次都是List queryXXXinfo 没有使用过set接受
前提:使用的是oracle数据库
测试set接受
补充小的知识点:
-- oracle查询建表语句模板
select dbms_metadata.get_ddl('TABLE','TABLE_NAME') from dual; -- 表名大写别忘了
-- 建表语句
CREATE TABLE "SHAOMING"."DEMO"
( "ID" NUMBER,
"NAME" VARCHAR2(50)
)
2.插入模拟数据
-- 重复插入相同的字段
insert into demo select 1 , 'ceshi' from dual;
3.书写dao层
/**
* 测试使用set接受entity的集合
*/
@Select("select * from demo")
public Set<Demo> queryDemoList();
3.写test进行测试
@ContextConfiguration("classpath:/spring-mybatis.xml")
@RunWith(SpringJUnit4ClassRunner.class)
//这里可以声明一个事务管理 每个单元测试都进行事务回滚 无论成功与否
@TransactionConfiguration(defaultRollback = true)
@Transactional
public class DaoTest {
@Autowired
private DemoDao demoDao;
/**
* 测试使用set接受entity的集合
*/
@Test
public void testqueryallBySet() {
Set<Demo> queryDemoList = demoDao.queryDemoList();
System.out.println(queryDemoList);
}
}
4.测试结果,只有一个结果
也验证了set是不可重复的