org.geolatte.geom.Point
класс расширяет org.geolatte.geom.Geometry
, который имеет метод Envelope<P> getEnvelope()
. Jackson
по умолчанию сериализует все POJO
getters
: get*
и is*
методы. Вы должны игнорировать эти методы, используя аннотацию JsonIgnore
. Пример интерфейса MixIn
может выглядеть следующим образом:
interface GeometryMixIn {
@JsonIgnore
Envelope getEnvelope();
@JsonIgnore
PositionSequence getPositions();
}
и теперь нам нужно зарегистрировать его, как показано ниже:
ObjectMapper mapper = new ObjectMapper();
mapper.addMixIn(Geometry.class, GeometryMixIn.class);
Теперь вы можете использовать этот преобразователь для сериализации Point
. В случае, если другие getters
будут проблематичны, игнорируйте их таким же образом. Но лучший способ OOP
- создать пользовательский POJO
, который мы создадим на основе Point
, где у нас будет полный контроль над тем, что видно для 3-rd party libraries
.