不使用Experimental的代码,帮我写一个demo
时间: 2024-05-17 18:15:41 浏览: 7
好的,这里是一个使用 Flink 1.15.3 批处理模式处理 Oracle 数据源的示例代码:
```java
import org.apache.flink.api.java.ExecutionEnvironment;
import org.apache.flink.api.java.io.jdbc.JDBCInputFormat;
import org.apache.flink.types.Row;
import org.apache.flink.api.common.typeinfo.BasicTypeInfo;
import org.apache.flink.api.common.typeinfo.TypeInformation;
import org.apache.flink.api.java.typeutils.RowTypeInfo;
public class OracleBatchDemo {
public static void main(String[] args) throws Exception {
final ExecutionEnvironment env = ExecutionEnvironment.getExecutionEnvironment();
// 创建一个 JDBCInputFormat 对象来读取 Oracle 数据库中的数据
JDBCInputFormat jdbcInputFormat = JDBCInputFormat.buildJDBCInputFormat()
.setDrivername("oracle.jdbc.driver.OracleDriver")
.setDBUrl("jdbc:oracle:thin:@//localhost:1521/orcl")
.setUsername("username")
.setPassword("password")
.setQuery("SELECT * FROM my_table")
.setRowTypeInfo(new RowTypeInfo(
new TypeInformation[] {
BasicTypeInfo.INT_TYPE_INFO,
BasicTypeInfo.STRING_TYPE_INFO
},
new String[] {"id", "name"}
)).finish();
// 从数据源中读取数据,并返回一个 DataSet 对象
env.createInput(jdbcInputFormat)
.filter(row -> row.getField(0) != null && row.getField(1) != null)
.print();
env.execute("Oracle Batch Demo");
}
}
```
这里的 `JDBCInputFormat` 对象使用了 Flink 提供的 `org.apache.flink.api.java.io.jdbc.JDBCInputFormat` 类,可以方便地从 Oracle 数据库中读取数据。在 `setQuery` 方法中指定了需要查询的表名,`setRowTypeInfo` 方法中设置了返回数据的类型信息。在 `createInput` 方法中,对 `DataSet` 对象进行了简单的过滤和打印操作。
需要注意的是,这里的代码中使用了 `org.apache.flink.api.java.ExecutionEnvironment` 类,是 Flink 的批处理模式 API,不需要使用 Experimental 的代码。
相关推荐
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)