跨多个数据源的J2EE开发: 细节探讨 - 编程入门网
ot;;
url= "jdbc:odbc:ExcelJDBC";
user[3]= "";
pwd[3]= "";
...
// perform the data source lookups.
...
}
// lookup data sources. This is called by the servlet''s "init" method.
private void getDS() {
System.out.println("> Jdbc2Oem -- looking up datasources...");
...
try {
ctx = new InitialContext();
for (int i = 0; i < 3; i++) {
if(ds[i] == null) ds[i] = (DataSource)ctx.lookup(jndiname[i]);
}
ctx.close();
} catch (Exception e) {
System.out.println("Could not look up datasource: " + e);
return;
}
...
}
// establish connections
private void getConn() {
System.out.println("> Jdbc2Oem -- setting up connections...");
// establish connections to local DB2 Information Integrator,
// remote DB2 UDB, remote Oracle
try {
for (int i = 0; i < 3; i++) {
conn[i] = ds[i].getConnection(user[i], pwd[i]);
conn[i].setAutoCommit(true);
}
// load the Excel driver & establish a connection
Class.forName(driver);
conn[3] = DriverManager.getConnection(url, user[3], pwd[3]);
conn[3].setAutoCommit(true);
} catch (Exception e) {
System.out.println("Error connection: " + e);
return;
}
}
跨多个数据源的J2EE开发: 细节探讨(5)时间:2011-04-11 IBM C. M. Saracco设计和分解查询 开发检索数据的查询显然是我们工作中最具挑战性的部分。这项任务涉及到确定实现目 标查询的正确语法和语义。(如果您已经忘了它们,请参阅 附录 C。) 当我们通过 DB2 Information Integrator 来访问数据时,很容易就能找到如何正确设 计每个查询的方法。实际上,您会看到我们发出的查询非常象原始的目标查询。 然而,当我们使用直接数据访问来实现这些同样的查询时,事情马上变得复杂起来。我 们必须找到如何正确分解每个查询的方法,以便从每个数据源中检索到正确的数据,同时 保持合理的性能。然后我们必须设计在中间结果上操作的“最终”查询。要使所有的工作 不出差错,说得容易做起来难。当然,这些工作的副作用是,我们需要设计、开发和维护 很多额外的代码。 好奇吗?那么就让我们从使用 DB2 Informcomparetion Integrator 的 servlet 方案 开始比较一下工作量吧。 开发使用 DB2 Information Integrator 来访问数据的查询 使用 DB2 Information Integrator,我们将每个目标查询转换为一个和环境相适应的 SQL 语句。在某些情况下,只需要作很少(如果有的话)的修改。在所有情况下,我们不 必为处理不同的 SQL 方言而担心(即使我们的数据分布在不同的数据源中),而且我们不 必知道数据的物理位置。DB2 Information Integrator 会自动解决这些问题。 查询 1 看上去和我们原始的目标查询非常相似,除了将参数标记转换为一个特定的 VARCHAR 大小。这是一种性能调节机制,我们将在我们系列的下一篇文章中讨论它的使用 。在使用 DB2 Information Integrator 的 servlet 中,我们如下定义第一个查询:
|
凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢! |