首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > 编程 >

一种十分蹩脚的万用泛型service实现

2012-12-19 
一种非常蹩脚的万用泛型service实现写完我自己已经吐了@Servicepublic class PubManagerT, PK extends Se

一种非常蹩脚的万用泛型service实现

写完我自己已经吐了

@Servicepublic class PubManager<T, PK extends Serializable>{private SessionFactory sessionFactory;@Autowiredprivate PubManagerImpl<T, PK> mgr;@Autowired      public void setSessionFactory(SessionFactory sessionFactory) {this.sessionFactory = sessionFactory;    }public PubManagerImpl<T, PK> getI(Class<T> c){if(null == mgr.getDAO()){mgr.setDao(new HibernateDao<T, PK>(sessionFactory ,c));}return mgr;}}


@Service@Transactionalpublic class PubManagerImpl<T, PK extends Serializable> extends AbsManager<T, PK>  implements absMgr<T, PK> {private HibernateDao<T, PK> dao;@Overridepublic HibernateDao<T, PK> getDAO() {return dao;}public void setDao(HibernateDao<T, PK> dao) {this.dao = dao;}}Controller@RequestMapping("/xxx/xxxx")public class XxxxXxxxXxxController {@Autowired  private CodeManager codeManager;@Autowired  private PubManager<XxxxxXxxxXxxx, String> pubManager;


@RequestMapping("allXxx")public @ResponseBody Page<XxxxxXxxxXxxx> logs(){return pubManager.getI(XxxxxXxxxXxxx.class).searchByPage();}


需要获得运行时的Class<T>
感觉上是可以做到样子……

参照泛型DAO的写法
完全不行

人家也不是万用实现

求打通七筋八脉~

热点排行