关于java中包和文件名的问题
如果有这样四个接口如下:
com.jdon.itestA
IAA
IBB
com.jdon.itestB
ICC
IDD
假设每个接口都用同一种技术实现:
com.jdon.testA
AAImpl
BBImpl
com.jdon.testB
CCImpl
DDImpl
这样OK.
但是,如果现在对于同一接口或者同一包下的接口,会有不同的实现类,包的组织应该如何组织?
我觉得有三种,那种最好?
第一种:文件名分开,业务(testA、testB)不分开
com.jdon.testA
AAImplHibernate
AAImplEJB
BBImplHibernate
BBImplEJB
com.jdon.testB
CCImplHibernate
CCImplEJB
DDImplHibernate
DDImplEJB
第二种:文件名相同,业务下技术实现分开
com.jdon.testA
com.jdon.testA.hibernate
AAImpl
BBImpl
com.jdon.testA.ejb
AAImpl
BBImpl
com.jdon.testB
com.jdon.testB.hibernate
CCImpl
DDImpl
com.jdon.testB.ejb
CCImpl
DDImpl
第三种:技术上分开,然后再业务上分开
com.jdon.hibernate
com.jdon.hibernate.testA
AAImpl
BBImpl
com.jdon.hibernate.testB
CCImpl
DDImpl
com.jdon.ejb
com.jdon.ejb.testA
AAImpl
BBImpl
com.jdon.ejb.testB
CCImpl
DDImpl
到底哪种好?谢谢!