数据库数据源
JDBC数据源,支持如下的三种数据源类型:
- JDBC连接数据源:通过JDBC定义连接数据库的用户密码等信息连接数据源
- JNDI连接数据源:JNDI数据源,利用web容器定义JNDI数据源
- CUSTOM数据源:自定义数据源,利用自定义类返回java.sql.DataSource
选择界面如图:
JDBC数据源
首先选择数据库类型:
然后设置JDBC连接属性:
其中ID是全局唯一的,在多租户环境下要注意命名的规范性,避免ID冲突
系统默认采用DBCP定义数据连接,相关连接池的配置如下:
DBCP连接还支持参数设定:
JNDI数据源
首先选择数据库类型:
设置JNDI的配置:
其中ID是全局唯一的,在多租户环境下要注意命名的规范性,避免ID冲突
CUSTOM数据源
首先选择数据库类型:
设置数据源的连接配置:
其中自定义的【SPI】数据连接类需要实现com.basksoft.core.model.datasource.BuildinDatasourceProvider类,接口说明:
public interface BuildinDatasourceProvider {
/**
* 根据DatasourceDefinition的定义生成java.sql.DataSource对象
* @param def 数据源定义对象
* @return DataSource
*/
DataSource buildDatasource(DatasourceDefinition def);
}
实现参考:
public class SampleCenterDatasource implements BuildinDatasourceProvider {
private static Properties properties = new Properties();
private DataSource dataSource = null;
@Override
public DataSource buildDatasource(DatasourceDefinition def) {
if (dataSource!=null) {
return dataSource;
}
Environment env = ToolSpring.getBean(Environment.class);
// 加载DBCP配置文件
properties.put("username", System.getProperty("dbserver.user"));
properties.put("password", System.getProperty("dbserver.pwd"));
properties.put("driverClassName", env.getProperty("baskreport.sampledb.driverClassName"));
properties.put("url",env.getProperty("baskreport.sampledb.url"));
try {
dataSource = BasicDataSourceFactory.createDataSource(properties);
} catch (Exception e) {
e.printStackTrace();
}
return dataSource;
}
}
利用以上方法定义的数据源,可以让你在数据流程,报表,仪表盘设计时,可以使用此处定义的数据源。
- 报表或仪表盘选用服务器数据源
- Adapt数据流程选用服务器数据源
- 报表或仪表盘选用数据集
- Adapt数据流程选用数据集