You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 

2.0 KiB

Databasir

Database document generator

you could use databasir to generate database meta model, or render it as markdown / pdf (TODO) / html (TODO)

How to use

Database Meta to Java Model

java.sql.Connection connection=...;
        DatabaseMeta meta=Databasir.of().get(connection,"user").orElseThrow();

Render as Markdown

try(FileOutputStream out=new FileOutputStream("user.md")){
        java.sql.Connection connection=...;
        Databasir databasir=Databasir.of();
        DatabaseMeta meta=databasir.get(connection,"user").orElseThrow();
        databasir.renderAsMarkdown(doc,out);
        }catch(IOException e){
        throw new IllegalStateException(e);
        }
  • Markdown Example

Ignore tables or columns

support regex pattern to ignore table or column

java.sql.Connection connection=...;
        DatabasirConfig config=new DatabasirConfig();
        config.ignoreColumn("id*");
        config.ignoreTable("flyway.*");
        DatabaseMeta meta=Databasir.of(config).get(connection,"user").orElseThrow();

Extension

Custom configuration

java.sql.Connection connection=...;
        DatabasirConfig config=new DatabasirConfig();
        config.setDatabaseMetaRepository(...); // your custom repository
        config.setTableMetaRepository(...); // your custom repository
        config.setColumnMetaRepository(...); // your custom repository
        config.setTriggerMetaRepository(...); // your custom repository
        config.setIndexMetaRepository(...); // your custom repository
        DatabaseMeta meta=Databasir.of().get(connection,"user").orElseThrow();

Default Repository Is

  • com.databasir.core.meta.repository.impl.jdbc.JdbcDatabaseMetaRepository
  • com.databasir.core.meta.repository.impl.jdbc.JdbcTableMetaRepository
  • com.databasir.core.meta.repository.impl.jdbc.JdbcColumnMetaRepository
  • com.databasir.core.meta.repository.impl.jdbc.JdbcIndexMetaRepository
  • com.databasir.core.meta.repository.impl.jdbc.JdbcTriggerMetaRepository