这样的情况怎样设计好?

我在一系统中,有几处用到了树结构,组织机构,资源菜单,分类这些都是用到了无限级分类,
做了几个发现这样很多重复的代码,从 entity,dao,manager,acton都很多代码方法都重复了
有时要优化一下,发现别的模块也需要优化,这样重复地方多了,怎样设计好点呢?
我的是(SSH+EXT)

重构喽 重复部分尽量设计成可扩展的,即OCP原则
封装变化原则、接口隔离 etc.
建议你贴代码