下面的代码片段显示了整个配置过程:
ConfigurationDBRef dbConfig = new ConfigurationDBRef();
dbConfig.setDriverManagerConnection("org.postgresql.Driver",
"jdbc:postgresql://localhost:5432/database_name",
"user",
"password");
Configuration engineConfig = new Configuration();
engineConfig.addDatabaseReference("database_alias", dbConfig);
esperEngine = EPServiceProviderManager.getDefaultProvider(engineConfig);
就是这样。 esperEngine将准备与database_alias作为查询statemet别名与数据库名称沟通你的引擎实例(用于查询的FROM子句)
您可以通过以下方式安装在艾斯波的情况下查询:
String statement = "SELECT datastream.column1, rel.column2" +
"FROM Datastream.Measure AS datastream, " +
"sql:database_alias ['SELECT column2 " +
"FROM \"SchemaX\".\"TableY\" ] AS rel";
//Install this query in the engine
EPStatement queryEngineObject = esperEngine.getEPAdministrator().createEPL(statement);
//Associate a Listener to this query
MyQueryListener listener = new MyQueryListener(); //that implements UpdateListener Interface
queryEngineObject.addListener(listener);
嗨,我有同样的问题。我跟着你的同一步骤。但问题是我的听众没有收到任何数据库中的数据。 – Sajithv 2015-04-10 09:06:27
和配置似乎工作正常,但没有结果。 – Sajithv 2015-04-10 09:07:07