beanshell 线上修复BUG

本文介绍如何使用Beanshell脚本进行服务器线上修复处理,包括将所有对象存放在容器中以便脚本调用,以及设置非公开方法和字段的访问权限。

有时服务器上线了 但是有些代码因为程序原因可能导致没有执行 需要主动调用执行下 或者为了排查线上问题 主动获取某个方法或者变量的返回值 可以使用脚本来做线上的修复处理
javascript 也是可以的 但是编写脚本 有些时候总有字段类型转换的问题
beanshell是java脚本 写起来方便很多
不过 使用这些脚本修复的一个基础是要有一个容器存放所有的对象 如果使用了spring的话就不用考虑了

ScriptEngineManager manager = new ScriptEngineManager();
        engine = manager.getEngineByName("js");
        ApplicationContext context = GameServerContext.getAppContext();
        for (String beanName : context.getBeanDefinitionNames()) {
            manager.put(beanName, context.getBean(beanName));
            try {
                interpreter.set(beanName, context.getBean(beanName));
            } catch (Exception e) {
                throw new ServiceException(e);
            }
        }
        //让所有的非public方法和字段可供调用
        try {
            Capabilities.setAccessibility(true);
        } catch (Unavailable e) {
            throw new ServiceException(e);
        }
先把对象都放到对应的对象里面去 这样后面写的脚本才能获取到对应的对象
Interpreter是 beanshell里的一个类  执行方法调用的时候 可能有些方法是private  或者 protected的  所以需要提前设置下 方便脚本调用 Capabilities.setAccessibility(true);
声明下代码不是我写的
.----.
             _.'__    `. 
         .--(#)(##)---/#\
       .' @          /###\
       :         ,   #####
        `-..__.-' _.-\###/  
              `;_:    `"'
            .'"""""`. 
           /,  LOL ,\
          //  很穷!  \\
          `-._______.-'
          ___`. | .'___ 
         (______|______)
为了查找与测绘遥感相关的SCI期刊列表,可以通过学术搜索引擎或访问特定的数据库来获得最新的信息。通常这些资源会定期更新以反映最新收录情况。 些常用的搜索方式包括: 查阅Web of Science (WOS) 数据库 这是最直接的方法之,因为Science Citation Index(SCI)正是由该数据库维护。可以在其中设置关键词为"remote sensing", "surveying and mapping" 或者更具体的主题术语,并选择仅显示被SCI索引的文章和期刊。 利用Google Scholar 虽然不是专门针对SCI期刊,但可以找到很多高影响力的测绘遥感类文章及其发表刊物的信息。从这里也可以了解到哪些是活跃且受认可的研究领域内的出版物。 参考Journal Citation Reports (JCR) 这是个评估科学和技术期刊影响力的重要工具。通过查看影响因子和其他指标,可以帮助确定哪些测绘遥感领域的期刊最具权威性并且属于SCI范畴。 咨询图书馆员或专业人士 大学或研究机构的专业人员能够提供指导和支持,帮助定位最适合需求的具体期刊名称及详情。 订阅行业通讯和服务 某些服务如Elsevier's Scopus也会报告关于各个学科顶级期刊的消息,保持关注可以获得及时的通知。 以下是几个知名的测绘遥感相关SCI期刊的例子: - Remote Sensing of Environment - IEEE Transactions on Geoscience and Remote Sensing - ISPRS Journal of Photogrammetry and Remote Sensing - International Journal of Applied Earth Observation and Geoinformation 请注意,实际的SCI期刊名单可能会随着时间而变化,因此建议总是使用最新的在线资源来进行确认。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值