schemaspy:schemaspy

Note:This goal should be used as a Maven report.

Full name:

com.wakaleo.schemaspy:maven-schemaspy-plugin:1.0:schemaspy

Description:

The SchemaSpy Maven plugin report.

Attributes:

  • Requires a Maven 2.0 project to be executed.

Required Parameters

Name Type Since Description
database String - The name of the database being analysed.
outputDirectory String - The output directory where the final HTML reports will be generated. Note that the reports are always generated in a directory called "schemaspy". The output directory refers to the directory in which the "schemaspy" will be generated.
Default value is: ${project.build.directory}/site.
targetDirectory File - The output directory for the intermediate report.

Optional Parameters

Name Type Since Description
allowHtmlInComments Boolean - Allow HTML In Comments. Any HTML embedded in comments normally gets encoded so that it's rendered as text. This option allows it to be rendered as HTML.
commentsInitiallyDisplayed Boolean - Comments Initially Displayed. Column comments are normally hidden by default. This option displays them by default.
cssStylesheet String - The CSS Stylesheet. Allows you to override the default SchemaSpyCSS stylesheet.
databaseType String - The type of database being analysed - defaults to ora.
excludeColumnNamesRegex String - Exclude matching columns from relationship analysis to simplify the generated graphs. This is a regular expression that's used to determine which columns to exclude. It must match table name, followed by a dot, followed by column name. For example: -x "(book.isbn)|(borrower.address)" Note that each column name regular expression must be surround by ()'s and separated from other column names by a |.
host String - The host address of the database being analysed.
includeTableNamesRegex String - Only include matching tables/views. This is a regular expression that's used to determine which tables/views to include. For example: -i "(.*book.*)|(library.*)" includes only those tables/views with 'book' in their names or that start with 'library'. You might want to use "description" with this option to describe the subset of tables.
jdbcUrl String - The JDBC URL to be used to connect to the database. Rather than defining the database and host names and letting SchemaSpy build the URL, you can alternatively specify the complete JDBC URL using this parameter. If this parameter is defined, it will override the host address (which, as a result, is not needed). Note that you still need to specify the database type, since SchemaSpy uses its own database properties file for extra information about each database.
noHtml Boolean - Only generate files needed for insertion/deletion of data (e.g. for scripts).
noImplied Boolean - Don't include implied foreign key relationships in the generated table details.
noTableComments Boolean - Don't display table-based comments. for databases like MySQL that stuff unrelated data where comments belong.
password String - Database password to use - defaults to none.
pathToDrivers String - If specified, SchemaSpy will look for JDBC drivers on this path, rather than using the application classpath. Useful if your database has a non-O/S driver not bundled with the plugin.
schema String - Database schema to use - defaults to the specified user.
schemaDescription String - Schema description. Displays the specified textual description on summary pages. If your description includes an equals sign then escape it with a backslash. NOTE: This field doesn't seem to be used by SchemaSpy in the current version.
useDriverManager Boolean - Some databases, like Derby, will crash if you use the old driver object to establish a connection (eg "connection = driver.connect(...)"). In this case, set useDriverManager to true to use the DriverManager.getConnection() method instead (eg "connection = java.sql.DriverManager.getConnection(...)"). Other databases (eg MySQL) seem to only work with the first method, so don't use this parameter unless you have to.
user String - Connect to the database with this user id.

Parameter Details

allowHtmlInComments :

Allow HTML In Comments. Any HTML embedded in comments normally gets encoded so that it's rendered as text. This option allows it to be rendered as HTML.
  • Type: java.lang.Boolean
  • Required: No

commentsInitiallyDisplayed :

Comments Initially Displayed. Column comments are normally hidden by default. This option displays them by default.
  • Type: java.lang.Boolean
  • Required: No

cssStylesheet :

The CSS Stylesheet. Allows you to override the default SchemaSpyCSS stylesheet.
  • Type: java.lang.String
  • Required: No

database :

The name of the database being analysed.
  • Type: java.lang.String
  • Required: Yes

databaseType :

The type of database being analysed - defaults to ora.
  • Type: java.lang.String
  • Required: No

excludeColumnNamesRegex :

Exclude matching columns from relationship analysis to simplify the generated graphs. This is a regular expression that's used to determine which columns to exclude. It must match table name, followed by a dot, followed by column name. For example: -x "(book.isbn)|(borrower.address)" Note that each column name regular expression must be surround by ()'s and separated from other column names by a |.
  • Type: java.lang.String
  • Required: No

host :

The host address of the database being analysed.
  • Type: java.lang.String
  • Required: No

includeTableNamesRegex :

Only include matching tables/views. This is a regular expression that's used to determine which tables/views to include. For example: -i "(.*book.*)|(library.*)" includes only those tables/views with 'book' in their names or that start with 'library'. You might want to use "description" with this option to describe the subset of tables.
  • Type: java.lang.String
  • Required: No

jdbcUrl :

The JDBC URL to be used to connect to the database. Rather than defining the database and host names and letting SchemaSpy build the URL, you can alternatively specify the complete JDBC URL using this parameter. If this parameter is defined, it will override the host address (which, as a result, is not needed). Note that you still need to specify the database type, since SchemaSpy uses its own database properties file for extra information about each database.
  • Type: java.lang.String
  • Required: No

noHtml :

Only generate files needed for insertion/deletion of data (e.g. for scripts).
  • Type: java.lang.Boolean
  • Required: No

noImplied :

Don't include implied foreign key relationships in the generated table details.
  • Type: java.lang.Boolean
  • Required: No

noTableComments :

Don't display table-based comments. for databases like MySQL that stuff unrelated data where comments belong.
  • Type: java.lang.Boolean
  • Required: No

outputDirectory :

The output directory where the final HTML reports will be generated. Note that the reports are always generated in a directory called "schemaspy". The output directory refers to the directory in which the "schemaspy" will be generated.
  • Type: java.lang.String
  • Required: Yes
  • Expression: ${project.reporting.outputDirectory}
  • Default: ${project.build.directory}/site

password :

Database password to use - defaults to none.
  • Type: java.lang.String
  • Required: No

pathToDrivers :

If specified, SchemaSpy will look for JDBC drivers on this path, rather than using the application classpath. Useful if your database has a non-O/S driver not bundled with the plugin.
  • Type: java.lang.String
  • Required: No

schema :

Database schema to use - defaults to the specified user.
  • Type: java.lang.String
  • Required: No

schemaDescription :

Schema description. Displays the specified textual description on summary pages. If your description includes an equals sign then escape it with a backslash. NOTE: This field doesn't seem to be used by SchemaSpy in the current version.
  • Type: java.lang.String
  • Required: No

targetDirectory :

The output directory for the intermediate report.
  • Type: java.io.File
  • Required: Yes
  • Expression: ${project.build.directory}

useDriverManager :

Some databases, like Derby, will crash if you use the old driver object to establish a connection (eg "connection = driver.connect(...)"). In this case, set useDriverManager to true to use the DriverManager.getConnection() method instead (eg "connection = java.sql.DriverManager.getConnection(...)"). Other databases (eg MySQL) seem to only work with the first method, so don't use this parameter unless you have to.
  • Type: java.lang.Boolean
  • Required: No

user :

Connect to the database with this user id.
  • Type: java.lang.String
  • Required: No