申请/专利权人:江苏富深协通科技股份有限公司
申请日:2022-08-02
公开(公告)日:2024-02-09
公开(公告)号:CN117539470A
主分类号:G06F8/36
分类号:G06F8/36;G06F8/30;G06F8/73;G06F9/448
优先权:
专利状态码:在审-实质审查的生效
法律状态:2024.03.01#实质审查的生效;2024.02.09#公开
摘要:本发明公开了基于自定义接口和注解的动态生成控制器的方法,其特征在于,包括以下步骤:S1、设备运检:检查系统搭建设备中动态识别设备、通讯设备、接口模块、控制器及输入设备是否建立可靠连接;S2、接口定义:定义服务接口,在定义后的服务接口上增加服务接口注解FusionService,并设置访问路径;S3、接口方法注解:在传统接口方法上增加接口方法FusionOperation注解,并设置访问路径、方法描述以及数据请求方式;S4、Spring启动:新建类实现服务接口,该控制器生成方法直接在服务接口类以及其方法上添加自定义注解,注解里生成代理类实现控制器的作用,采用动态生成的方式自动生成,这样控制器就不用再手动编写,可以大大减少代码的编写量,降低编码出错机率。
主权项:1.基于自定义接口和注解的动态生成控制器的方法,其特征在于:包括以下步骤:S1、设备运检:检查系统搭建设备中动态识别设备、通讯设备、接口模块、控制器及输入设备是否建立可靠连接;S2、接口定义:定义服务接口,在定义后的服务接口上增加服务接口注解FusionService,并设置访问路径;S3、接口方法注解:在传统接口方法上增加接口方法FusionOperation注解,并设置访问路径、方法描述以及数据请求方式;S4、Spring启动:新建类实现服务接口,启动Spring,查找实现BeandefinitionregistrypostProcessor的Spring启动扩展类中的FusionRestBeanPostProcessor;S5、查找:扫描Classpath,在FusionRestBeanPostProcessor路径下下扫描所有类型接口定义,查找接口类型中带有FusionSerice注解的接口定义;S6、调用:根据接口名称拼上Controller产生动态类名,利用ByteBuddy的name方法生成动态类,subclass方法指定其父类,根据匹配的接口创建动态实现类接口,动态类添加SpringMVC的RequestMapping的类注解;S7、注入控制器:添加方法调用ProxyHandler,利用make方法生成字节码,利用load方法将生成字节码加载到JVM中,使用registerSingleton方法将其注入spring容器中。
全文数据:
权利要求:
百度查询: 江苏富深协通科技股份有限公司 基于自定义接口和注解的动态生成控制器的方法
免责声明
1、本报告根据公开、合法渠道获得相关数据和信息,力求客观、公正,但并不保证数据的最终完整性和准确性。
2、报告中的分析和结论仅反映本公司于发布本报告当日的职业理解,仅供参考使用,不能作为本公司承担任何法律责任的依据或者凭证。