Here is my config now. I want to use hibernate spatial to work with postgis in production.
spring:
  profiles: production
  datasource:
    platform: postgres
    url: jdbc:postgresql://192.168.99.100:5432/dragon
    username: dragon
    password: dragon
  database:
    driverClassName: org.postgresql.Driver
  jpa:
    database: POSTGRESQL
    database-platform: org.hibernate.spatial.dialect.postgis.PostgisDialect
    show-sql: true
    hibernate:
      ddl-auto: update
---
spring:
  profiles: development
  datasource: SpatialInMemoryDb
  jpa:
    database-platform: org.hibernate.spatial.dialect.h2geodb.GeoDBDialect
    hibernate:
      ddl-auto: create-drop
For tests all found is h2gis project.
public class SpatialInMemoryDb extends SingleConnectionDataSource{
    public SpatialInMemoryDb() {
        setDriverClassName("org.h2.Driver");
        setUrl("jdbc:g2:mem:test");
        setSuppressClose(true);
    }
    @Override
    public Connection getConnection() throws SQLException {
        System.out.println("************");
        Connection connection =  super.getConnection();
        try (Statement st = connection.createStatement()) {
            // Import spatial functions, domains and drivers
            // If you are using a file database, you have to do only that once.
            CreateSpatialExtension.initSpatialExtension(connection);
        } catch (Exception e) {
            e.printStackTrace();
        }
        return connection;
    }
Not sure that it will work with geodbdialect or postgisdialect, altough it seems very close to postgisdialect.
Anyway can someone recommend some easy solution?
 
     
    