Eclipse插件开发-首选项存储方案(IPreferenceStore)

本文介绍了Eclipse插件开发中IPreferenceStore的三种实现:ChainedPreferenceStore、PreferenceStore和ScopedPreferenceStore,详细阐述了它们的存储机制和应用场景。ScopedPreferenceStore根据实例和配置范围进行存储,而PreferenceStore基于文件存储。此外,还提及了ChainedPreferenceStore不常用的情况以及如何在Eclipse插件的Activator中应用PreferenceStore进行读取、修改和保存操作。
摘要由CSDN通过智能技术生成

IPreferenceStore有三个具体实现,分别是

  • ChainedPreferenceStore 链式存储
  • PreferenceStore 基于文件存储
  • ScopedPreferenceStore 基于范围存储

ScopedPreferenceStore 基于范围存储

  • 实例化
ScopedPreferenceStore preferenceStore = new ScopedPreferenceStore(InstanceScope.INSTANCE, PLUGIN_ID);
  • instance scope按照工作空间或平台的运行实例存储的,每个运行实例所存储的值可能是不一样的,不同实例之间只使用自己的值,无法与其它实例共享。
    存储位置位于运行实例的如下位置:{workspace_path}.metadata.plugins\org.eclipse.core.runtime.settings{qualifier}.prefs
  • configuration scope 各个工作空间将共享它们。例如,如果用户具有平台的单个安装,但是运行几个不同的工作空间,则配置级别范围的首选项将在工作空间之间共享。
    存储位置位于程序安装目录的如下位置:{configuration}.settings{qualifier}.prefs
  • Default scope-表示首选项的缺省值。它们不是由平台更改或存储的。但是,这些值来源于随插件的产品或主要功能部件一起存储的文件。
  • 加载首选项配置
try {
  preferenceStore.load();
} catch (IOException e) {
  logger.error("首选项加载异常", e);
}

PreferenceStore 基于文件存储

  • 实例化
PreferenceStore preferenceStore=new PreferenceStore(storePath);
  • storePath 首选项存储文件路径
  • 加载同ScopedPreferenceStore

ChainedPreferenceStore 不常用,在这不再描述

PreferenceStore在Ecllipse插件Activator中应用的源码

  • Activator类中覆盖默认首选项存储方案

                
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值