上云服务类设计图
2021-04-22 14:47:43 0 举报
上云服务类设计图
作者其他创作
大纲/内容
1:通过spring上下文,获取所有已注解@ActionAnnotation的实现类的BeanName,通过beanName反射获取实例化的实现类对象,通过实例化对象获取实现类注解名称,通过请求参数名称调用不同的实现类ApplicationContext applicationContext = SpringUtil.getApplicationContext(); String[] names = applicationContext.getBeanNamesForAnnotation(ActionAnnotation.class); for (String name : names) { AbstractDoorDataSyncHandler actionBean = (AbstractDoorDataSyncHandler) applicationContext.getBean(name); Class clazz = actionBean.getClass(); @SuppressWarnings(\"unchecked\") Annotation annotation = clazz.getAnnotation(ActionAnnotation.class); ActionAnnotation actionAnnotation = (ActionAnnotation) annotation; if (actionAnnotation.value().equals(beanName)) { actionBean.execute(obj); } }
实现类DoorAuthorityByBuildingEquipAddHandlerImpl
- needPersonDataSync:boolean- personDataSyncRebuilt()
策略模式
(接口)IDoorDataSyncHandler
+ execute()
接口:定义标准模板
实现类DoorAuthorityByBuildingEquipDelHandlerImpl
(抽象类)AbstractDoorDataSyncHandler
+ hook():boolean -勾子方法- extendMethod() -自定义扩展方法- execute() -实现接口- needPersonDataSync:boolean- personDataSyncRebuilt()
抽象类:可定义实现或未实现方法,主要为了重载重写复用
实现类:实现或重写抽象类或接口的方法,只有它能实例化,抽象类接口不行
实现类DoorAuthorityByPersonModifyHandlerImpl
0 条评论
下一页
为你推荐
查看更多