我的需求是读取本地或异地的数据,程序中用到ResultSet(本地读取)和DepartResultset(异地读取,自己写的)来获得数据,程序就像这样:
本地:ResultSet rs = stmt.executeQuery(sql);
异地:DepartResultset rs = ds.exec(sql);
异地rs类被封装了,没法继承ResultSet类。 我最简单的想法就是不用
if(本地)
if(rs.next)
...
else if(异地)
if(rs.next)
...省略部分代码量比较大。
最好就是,Java代码
Object rs = null;
if(本地)
rs = 本地
else
rs = 异地
然后if(rs.next)
...
有没有这种方式的实现。
本地:ResultSet rs = stmt.executeQuery(sql);
异地:DepartResultset rs = ds.exec(sql);
异地rs类被封装了,没法继承ResultSet类。 我最简单的想法就是不用
if(本地)
if(rs.next)
...
else if(异地)
if(rs.next)
...省略部分代码量比较大。
最好就是,Java代码
Object rs = null;
if(本地)
rs = 本地
else
rs = 异地
然后if(rs.next)
...
有没有这种方式的实现。
具体做法:
1.定义一个接口,提供你所需要的公用方法定义;
2.本地和异地的相关处理类分别实现该接口。