这可以被视为重复代码吗?

时间:2012-05-01 08:54:31

标签: java inversion-of-control

这是我在这里的第一篇文章,最近我一直在使用带有primefaces的JSF2.0。我们有这个要求在我们的应用程序中导出PDF。最初我们使用了primefaces默认的dataexporter标签。但格式简直太糟糕了。所以,我使用itext生成PDF。我们的应用程序中最多有15个数据表,所有这些都需要PDF导出。我创建了一个名为generatePDF的方法,它使用Itext为所有表创建PDF。

 Interface PDFI {
 public void setColNames();
 public void setColValues();
 public void setContentHeader();

 }
Class DataEx  {
    public void generatePDF(ActionEvent event) {
        // generate pdf...
    }

}

考虑我在视图中有一个数据表A. 数据库A ...... 这个数据表背后的bean ..

Class BeanA implements PDFI {
    //implemented methods

    }

} 
Class BeanB implements PDFI {
 //implemented methods

 }

在另一个数据表B后面,我做同样的事情。 所以,我的问题是,这被认为是重复的代码?而且,这是实现这一目标的有效方式。 任何帮助表示赞赏。 谢谢ina dvance

1 个答案:

答案 0 :(得分:0)

在重新分解重复代码之前我使用的经验法则 - 当一个地方的部分代码有错误时 - 您是否需要将另一个代码更改为?因为你可能会忘记

在你的情况下,看起来你有重复的代码块。我会考虑将require参数添加到generatePDF,这样它就可以在一个地方完成所有工作。