无意看到的一个贴,在此收藏一下。
文章出处:
http://tech.it168.com/a2011/0720/1220/000001220768_all.shtml
Java实现.NET中DataTable功能方案探究
【IT168 技术】前两天实现了net中DataTable功能,虽说功能不是很强大,但是完全满足了java中的多表查询,带来的编程风格改变还是存在的。现在拿出来说下,和各位大哥探讨下。
因为我本来就是搞net的,突然来了两个项目就是要用java以及oracle,便从各种方向上寻求net的影子,便有了今天这些工具类。不知道好不好,bug测试了一下了,性能上也只有经过项目来验证吧。其中一部分涉及到双数据库操作,所以也提了一种解决方案,写的不好,大家看看吧!
我们先看效果,再说说怎么弄!
我们来试试如何用,我也写了一个测试数据。
然后我们在Junit中测试:
@Test
public void joinTable() {
JingZongDB jzdb=new JingZongDB();
DataTabl1=jzdb.getDataTable("select * from newsType");
DataTable dt2=jzdb.getDataTable("select * from news");
DataTable dt=DataTable.joinTable(dt1, dt2, "id", "typeid");
wl("新闻类型表:"+dt1.getRow().size());
DataTable.outTable(dt1);
wl("新闻表:"+dt2.getRow().size());
DataTable.outTable(dt2);
wl("合并后:"+dt.getRow().size());
DataTable.outTable(dt);
}
private void wl(String s) {
System.out.println(s);
}
最后结果为: