# pacakge.json
package.json
文件包含两部分信息:
- 扩展数据库连接器的基本信息,包含扩展名称、描述文字、版本、展示图片等。配置参考连接器配置信息。
- 扩展数据库连接器的默认im
- 配置,包括扩展数据库库名、数据库类别、jdbc连接模板等。
以下是扩展数据库连接器的模板配置:
{
"name": "succ-dbconnector-jdbc",
"displayName": "Common JDBC",
"version": "1.0.0",
"icon": "icon.svg",
"thumbnail": "thumbnail.jpg",
"compatibilities": {
"platform": "^5.0.0"
},
"categories": [
"data"
],
"contributes": {
"dbConnector": {
"name": "JDBC",
"dbKind": "TransactionalDB",
"compatibilityLevel": "All",
"dbDisplayOrder": 0,
"jdbcConfigTemplate": {}
}
}
}
# 连接器配置信息
# name
扩展名称,需要和package.json
的上层目录名字相同。
# displayName
显示名称,一般与数据库名称保持一致。
# version
扩展数据库连接器版本,一般默认为1.0.0。
# icon
新建数据源后,在数据库页面显示的缩略图,此参数一般配置缩略图的路径,如succ-dbconnector-Mysql\icon.svg
。
# thumbnail
新建数据源对话框中的展示图片,此参数一般配置图片路径,如succ-dbconnector-Mysql\thumbnail.jpg
# platform
SuccBI平台的版本,通常为5.0.0。
# categories
扩展类别,默认为data
,表示为数据库连接器扩展。
# contributes
描述扩展数据库连接器的默认配置信息,具体可参考dbConnector。
# dbConnector
# name
SuccBI新建数据源时的名称,一般为扩展数据库的名称,如MySql
。
# dbKind
设置数据库在新建数据源对话框中显示的类别,主要类别如下所示
TransactionalDB
:事务型AnalyticalDB
:分析型HadoopDB
:Hadoop类ColumnarDB
:列式NoSQL
:NoSQL型Cube
:多维数据集Search
:检索服务Other
:其他
提示
dbKind
内可以配置多个参数,参数间用,
隔开。
# compatibilityLevel
数据库的兼容级别,此属性决定扩展数据库能使用系统中的哪些功能,默认为ALL
。
主要类别如下所示:
ALL
:完全兼容OLTP
:事务型,可以用于低代码应用、元数据存储、日志记录等使用场景。OLAP
:分析型,可以作为报表或仪表板的数据源,也可以作为数据仓库使用。OdsSource
:只查询,兼容级别最低的类型,通常只能进行数据库连接、查询等操作,无法进行提取加工。
# dbDisplayOrder
配置1-100的整数,决定扩展数据库在数据源对话框中的排列位置,数值越大排列位置就越靠前。
# capabilities
指定一个扩展目录的文件,用于描述和配置数据库的功能、兼容性选项,默认为capabilities.json文件。
# jdbcConfigTemplate
新建数据库连接的默认配置,通常包括jdbcurl、schema、port等。
示例如下所示:
"jdbcConfigTemplate": {
"schema": "testdb",
"url": "jdbc:mysql://{host}/{databaseName}?useUnicode=true&characterEncoding=utf8&allowLoadLocalInfile=true&zeroDateTimeBehavior=convertToNull&useSSL=false",
"port": 3306
}
# url
新建数据库连接时默认的jdbc连接,也可以在url中设置连接属性,若connectionProperties中配置了相同的连接属性,以此处的属性为准。
# driver
数据库连接器的默认驱动,如mysql的驱动为com.mysql.cj.jdbc.Driver
,若capabilities.json
中也配置了driver属性,以此处的配置为准。
# port
数据库的默认端口,如mysql的默认端口为3306
。
# schema
连接数据库时的默认显示的schema。
# poolSize
数据库连接池的最大连接数,默认为20。
# connectionProperties
连接器建立JDBC连接时的默认连接属性,有些数据库的属性必须通过Properties进行设置,设置到url中无效。可以设置一个字符串,并用&
分割多个属性,也可以设置为json字符串。
示例如下:
"connectionProperties": {
"connectTimeout": {
"configProperty": "connectTimeout",
"timeUnit": "ms",
"inURL": true
},
"socketTimeout": {
"configProperty": "socketTimeout",
"timeUnit": "ms",
"inURL": true
}
}
提示
若有些属性在url中已经设置,以url中的配置为准。
# defaultValue
数据库的连接属性名,名字一般与configProperty内的参数相同。
# configProperty
设置该属性的值由哪个参数传递过来,常用的有connectTimeout
、socketTimeout
、waitTime
,详细参数可参考数据库连接器扩展指南的configProperty
属性。
# timeUnit
时间单位参数,可以为ms
或者s
,默认为ms
。
# inURL
是否将连接属性设置到jdbc的url中,ture
表示设置到url中,默认为false
。