-
公开(公告)号:CN101174217A
公开(公告)日:2008-05-07
申请号:CN200710170767.9
申请日:2007-11-22
Applicant: 上海交通大学
IPC: G06F9/44
Abstract: 一种计算机技术领域的Java程序可动态更新化实现方法,首先,对被动态更新程序中需要动态更新的类定义进行改造,增加更新支持方法,参数为类装载器,该方法用于实现对类对象的子对象逐个判断;对动态更新程序中更新类定义进行修改,增加更新方法,用于实现对该新类对象下的变量进行初始化,该方法的输入参数为类装载器和旧对象;再次,利用Java反射机制对被更新程序的部分方法调用、数据域存储以及对象建立进行修改,从而实现程序的运行恢复;最后,对主类增加更新支持方法并在主方法循环中增加更新检测点。本发明以避免需要采用停机、更新、重新启动的软件更新,避免由于停机中断服务造成的损失。
-
公开(公告)号:CN100489778C
公开(公告)日:2009-05-20
申请号:CN200710170767.9
申请日:2007-11-22
Applicant: 上海交通大学
IPC: G06F9/44
Abstract: 一种计算机技术领域的Java程序可动态更新化实现方法,首先,对被动态更新程序中需要动态更新的类定义进行改造,增加更新支持方法,参数为类装载器,该方法用于实现对类对象的子对象逐个判断;对动态更新程序中更新类定义进行修改,增加更新方法,用于实现对该新类对象下的变量进行初始化,该方法的输入参数为类装载器和旧对象;再次,利用Java反射机制对被更新程序的部分方法调用、数据域存储以及对象建立进行修改,从而实现程序的运行恢复;最后,对主类增加更新支持方法并在主方法循环中增加更新检测点。本发明以避免需要采用停机、更新、重新启动的软件更新,避免由于停机中断服务造成的损失。
-
公开(公告)号:CN100492290C
公开(公告)日:2009-05-27
申请号:CN200710170768.3
申请日:2007-11-22
Applicant: 上海交通大学
IPC: G06F9/44
Abstract: 一种软件维护技术领域的软件动态演化中构件运行时状态的获取和转换方法,包括如下步骤:解析构件新旧版本的实现源代码、构件规约和内部业务逻辑,分别建立构件内部结构逻辑表示模型;比较两个逻辑表示模型,识别相对应的成员变量和语法结构,返回版本间的相关性详细描述,确定应被获取并转换到新版本的构件状态信息;修改构件新版本的逻辑表示模型,增加接口方法从旧版本中导出并保存其运行时状态信息,并增加接口方法导入并转换状态信息;基于已修改的构件新版本逻辑表示模型,重新生成构件新版本的源代码。本发明方法能够有效获取并转换构件运行时的状态信息,实现动态演化支持系统中的状态转换功能。
-
公开(公告)号:CN101162428A
公开(公告)日:2008-04-16
申请号:CN200710170768.3
申请日:2007-11-22
Applicant: 上海交通大学
IPC: G06F9/44
Abstract: 一种软件维护技术领域的软件动态演化中构件运行时状态的获取和转换方法,包括如下步骤:解析构件新旧版本的实现源代码、构件规约和内部业务逻辑,分别建立构件内部结构逻辑表示模型;比较两个逻辑表示模型,识别相对应的成员变量和语法结构,返回版本间的相关性详细描述,确定应被获取并转换到新版本的构件状态信息;修改构件新版本的逻辑表示模型,增加接口方法从旧版本中导出并保存其运行时状态信息,并增加接口方法导入并转换状态信息;基于已修改的构件新版本逻辑表示模型,重新生成构件新版本的源代码。本发明方法能够有效获取并转换构件运行时的状态信息,实现动态演化支持系统中的状态转换功能。
-
-
-