使用 Apache Derby 开发 Eclipse 插件
2009-12-14 00:00:00 来源:WEB开发网本文附带了即用的样例资源索引器应用程序。它将监视由插件定义并具有名为 Sample Nature 特性的 Eclipse 工作区的项目中的所有资源(文件)。应用程序将把关于资源的信息存储到 Derby 数据库中并将提供一个允许您搜索文件的名为 Resources View 的视图。
在此部分中,您将亲历创建应用程序的主要步骤。开发 Eclipse 插件 GUI 这类典型步骤将被忽略,您将重点关注于用 Derby 进行插件开发。
连接池数据源管理器
由于是通过 JDBC 访问 Derby 数据库,因此最好使用 Derby 的 ConnectionPoolDataSource 接口实现管理数据库连接。ConnectionPoolDataSource 始终保持若干个与数据库的开放连接,因此无需在每次需要操作数据库时都打开新连接,从而加速了进程。另外,ConnectionPoolDataSource 避免了在应用程序同时打开与数据库的若干个连接的情况下发生冲突。
您将使用 Derby JDBC 驱动程序附带的名为 EmbeddedConnectionPoolDataSource 的类。在清单 5 中,创建 PerUserPoolDataSource 类的一个实例并将 EmbeddedConnectionPoolDataSource 类的实例设为其连接池数据源。
清单 5. 初始化 Derby 数据源 /**
* Datasource to use for connection.
*/
private static PerUserPoolDataSource datasource;
/**
* Initializes database and creates datasource instance for it.
*/
public static void initDatasource () {
EmbeddedConnectionPoolDataSource connectionPoolDatasource;
connectionPoolDatasource = new EmbeddedConnectionPoolDataSource();
connectionPoolDatasource.setDatabaseName(
ResourcesIndexerPlugin.getDefault().getStateLocation().
toFile().getAbsolutePath() + "/resourcesDB");
connectionPoolDatasource.setCreateDatabase("create");
datasource = new PerUserPoolDataSource();
datasource.setConnectionPoolDataSource(connectionPoolDatasource);
datasource.setDefaultAutoCommit(false);
try {
Connection connection = datasource.getConnection();
try {
Statement statement = connection.createStatement();
// searching for Resources table in database and
// if there is no one then initialize database
try {
statement.execute("SELECT 1 FROM ");
} catch (SQLException ex) {
ResourcesDatabaseInitializer.initDatabase(connection);
} finally {
statement.close();
}
connection.commit();
} finally {
connection.close();
} catch (SQLException ex) {
// Error handling here
}
}
}
- ››使用linux中的quota教程
- ››apache设置域名绑定 以及绑定不起作用的排查
- ››使用jxl生成带动态折线图的excel
- ››apache rewrite将指定URL转向指定的几个服务器
- ››使用mysql mysqldump进行数据库迁移
- ››使用jquery是新tab形式
- ››使用QUnit进行Javascript单元测试
- ››使用UITextFieldDelegate来隐藏键盘
- ››使用公式提取Excel中的日期后发现格式不对
- ››使用SQL Azure 的BI 解决方案
- ››使用PLSQL Developer工具导出sql文件
- ››使用双缓冲技术实现Android画板应用
更多精彩
赞助商链接