Talend Open Studio导出JAR动态配置MariaDB连接及导出格式选型问询
动态传入数据库连接属性可行性
完全可以实现,你只需要在导出JAR前对项目做以下调整即可:
- 在Talend项目的Contexts视图中新增一组字符串类型的上下文变量,通常命名为
db_host、db_port、db_name、db_username、db_password对应数据库连接的各个属性 - 打开原有MariaDB连接组件的配置页,把固定写死的连接值替换为对应上下文变量,引用格式为
context.变量名,比如主机地址项填写context.db_host - 导出JAR时务必勾选「Export context」选项,将上下文配置一同打包进JAR
其他使用者拿到JAR后,运行时通过启动参数传入自身环境的配置即可,示例运行命令如下:java -jar 你的作业文件名.jar --context_param db_host=192.168.3.20 --context_param db_port=3306 --context_param db_name=business_db --context_param db_username=local_user --context_param db_password=local_pwd
如果觉得每次传多个参数麻烦,也可以把所有配置写入.properties文件,运行时指定加载配置文件路径即可,不用每次手动输全量参数。
小提示:如果你已经导出了未配置上下文的JAR,也可以解压JAR后手动修改内部的context配置文件,但是操作复杂度更高,更推荐提前配置上下文变量再导出。
普通JAR与可执行JAR的选择建议
优先选择导出可执行JAR,优势更明显:
- 可执行JAR已经内置了Talend运行所需的所有依赖以及启动类配置,使用者本地不需要部署Talend运行环境,也不用手动指定主类路径,直接用
java -jar命令就能运行,对非技术使用者非常友好 - 普通JAR仅包含项目本身的代码,运行时要求使用者本地部署和你开发时版本完全一致的Talend Runtime环境,还要手动指定依赖库路径、主类全限定名,上手门槛很高,很容易出现版本不兼容、依赖缺失的问题
例外情况:如果所有使用者的运行环境都统一部署了相同版本的Talend Runtime,且对JAR包体积有严格要求,可以选择普通JAR,其余场景均优先选择可执行JAR。
内容的提问来源于stack exchange,提问作者Vasilis R.
相关产品推荐
相关产品推荐

