新增 支持pgsql、kingbasees、mysql三种数据库

This commit is contained in:
2024-05-30 10:39:09 +08:00
parent 9104af2923
commit 670cd52c40
20 changed files with 332 additions and 98 deletions

View File

@@ -1,3 +1,4 @@
import com.kingbase8.ds.KBSimpleDataSource;
import com.mysql.cj.jdbc.MysqlDataSource;
import com.yanghuanglin.seq.config.GeneratorConfig;
import com.yanghuanglin.seq.config.TableConfig;
@@ -5,7 +6,9 @@ import com.yanghuanglin.seq.generator.Generator;
import com.yanghuanglin.seq.generator.impl.SequencesGenerator;
import com.yanghuanglin.seq.po.Sequences;
import org.junit.Test;
import org.postgresql.ds.PGSimpleDataSource;
import javax.sql.DataSource;
import java.util.HashSet;
import java.util.Set;
import java.util.concurrent.ArrayBlockingQueue;
@@ -17,15 +20,14 @@ import java.util.concurrent.TimeUnit;
* @since 2022/1/28
*/
public class SeqTest {
private static final MysqlDataSource dataSource = new MysqlDataSource();
private static final DataSource dataSource;
private static final Generator generator;
static {
dataSource.setURL("jdbc:mysql://127.0.0.1:3306/sequence");
dataSource.setUser("root");
dataSource.setPassword("root");
dataSource = pgsql();
GeneratorConfig generatorConfig = new GeneratorConfig(dataSource);
System.out.println("DbType: " + generatorConfig.getDbType());
TableConfig tableConfig = new TableConfig();
tableConfig.setTable("sequences");
@@ -39,6 +41,35 @@ public class SeqTest {
generator = new SequencesGenerator(generatorConfig);
}
private static DataSource mysql() {
MysqlDataSource mysqlDataSource = new MysqlDataSource();
mysqlDataSource.setURL("jdbc:mysql://127.0.0.1:3306/sequence");
mysqlDataSource.setUser("root");
mysqlDataSource.setPassword("root");
return mysqlDataSource;
}
private static DataSource kingbase8() {
KBSimpleDataSource kbDataSource = new KBSimpleDataSource();
kbDataSource.setURL("jdbc:kingbase8://127.0.0.1:54321/cemis?currentSchema=sequence");
kbDataSource.setUser("kingbase");
kbDataSource.setPassword("kingbase");
return kbDataSource;
}
private static DataSource pgsql() {
PGSimpleDataSource pgDataSource = new PGSimpleDataSource();
pgDataSource.setURL("jdbc:postgresql://127.0.0.1:54321/cemis?currentSchema=sequence");
pgDataSource.setUser("kingbase");
pgDataSource.setPassword("kingbase");
return pgDataSource;
}
@Test
public void createTable() {
generator.createTable();
}
@Test
public void generateTest() {
//释放未锁定序列号