自定义初始化

定义数据连接

利用baskreport.properties定义连接

在bask report.home目录下添加一个baskreport.properties配置文件,参考配置如下:

baskreport.store.database.driver=com.mysql.jdbc.Driver
baskreport.store.database.initialsize=0
baskreport.store.database.validationQuery=select 1
baskreport.store.database.platform=mysql
baskreport.store.database.maxTotal=10
baskreport.store.database.minIdle=0
baskreport.store.database.username=root
baskreport.store.database.password=helpdesk
baskreport.config.type=jdbc
baskreport.store.database.url=jdbc\:mysql\://localhost\:3306/baskreport?useUnicode\=true&characterEncoding\=UTF-8&useSSL\=false
baskreport.store.database.maxIdle=10

baskreport默认采用DBCP链接池管理数据连接。

如果你想自定义数据连接那么需要特别注意如下的几个参数的含义。

baskreport.store.database.platform

该参数用以定义数据库类型,可以支持的有

  • db2
  • dm
  • hsql
  • informix
  • mysql
  • oracle
  • postgresql
  • kingbase
  • sqlLite
  • sqlServer

分别代表不同类型的数据库

baskreport.config.type

如果你希望更改连接池或使用jndi实现数据连接,则可以通过baskreport.config.type参数调整,它可以支持三种类型:

  • jdbc
  • jndi(利用JNDI定义数据源)
  • connection(利用自定义的数据源定义数据连接,例如直接使用Spring中配置好的数据源)

jndi参考配置如下:

baskreport.store.database.platform=mysql
baskreport.config.type=jndi
baskreport.config.jndi=Jndi名称

connection参考配置如下:

baskreport.config.type=connection
baskreport.store.database.platform=mysql
baskreport.store.database.classname=自定义数据源连接的bean对象

其中connectionClassName是baskreport提供的一个接口类的实现类路径,如:

com.example.config.UserConnectionProvider

该类需要实现ConnectionProvider接口:

com.basksoft.report.core.model.datasource.ConnectionProvider

接口定义如下:

import java.sql.Connection;

public interface ConnectionProvider {
    Connection getConnection();//返回JDBC的数据连接对象
}

在该方法中你可以直接返回项目环境中的数据连接对象。

如果你希望采用c3p0或当前spring环境中的其他数据源的时候可以采用自定义ConnectionProvider的机制实现

创建系统表

选择合适的数据库建库脚本下载

baskreport需要在数据库中创建一些系统表,相关的建库脚本为:

利用以上的建表的脚本完成baskreport相关的数据库表的创建。

插入系统表的初始化数据

选择合适的数据库数据初始化的脚本

另外我们还要为上面创建好的数据库表格插入一些初始化数据:

利用以上的脚本完成数据库初始化的工作。

results matching ""

    No results matching ""