GeoTools

OSGeo

Table Of Contents

Previous topic

Pregeneralized Plugin

Next topic

GeoPackage Plugin

This Page

Property Plugin

DataStore supporting the use of simple java property files for storing spatial data. This was originally based on a tutorial in the use of AbstractDataStore, but has now been migrated to use ContentDataStore. The old implementation has been moved to the unsupported module.

Reference

Maven:

<dependency>
   <groupId>org.geotools</groupId>
   <artifactId>gt-property</artifactId>
   <version>${geotools.version}</version>
 </dependency>

Example

The property datastore works with a custom format based on Java property files:

_=id:Integer,geom:Geometry,name:String
rd1=1|wkt|road one
rd2=2|wkt|road two

These examples use the file example.properties.

_=id:Integer,name:String,geom:Point
fid1=1|jody garnett|POINT(0 0)
fid2=2|brent|POINT(10 10)
fid3=3|dave|POINT(20 20)
fid4=4|justin deolivera|POINT(30 30)

Here is an example to parse the above file:

        Map<String, Serializable> params = new HashMap<>();
        params.put("directory", directory);
        DataStore datastore = DataStoreFinder.getDataStore(params);

        Query query = new Query("example");
        FeatureReader<SimpleFeatureType, SimpleFeature> reader = datastore
                .getFeatureReader(query, Transaction.AUTO_COMMIT);
        try {
            int count = 0;
            while (reader.hasNext()) {
                SimpleFeature feature = reader.next();
                System.out.println("feature " + count + ": " + feature.getID());
                count++;
            }
            System.out.println("read in " + count + " features");
        } finally {
            reader.close();
        }