Store 3rd party library object in database

Viewed 25

Dear Stackoverflow community,

I'm developing a spring boot application which is using 3rd party library (https://github.com/goldmansachs/jdmn)

There is an object called TDefinitions which holds information about .dmn diagram. Somehow I need to persist this object or all the information that this object contains in my database, using Spring Data JPA repository. So that I can reuse it whenever I run my application again.

Could you please assist me what would be the ways to achieve that? Store it as a Blob or maybe serialize it somehow as a Json? The problem is it's not a simple object. Here's part of it's definition:

    @JsonPropertyOrder({...})
public class TDefinitions extends TNamedElement implements Visitable {
    @JsonProperty("import")
    private List<TImport> _import;
    private List<TItemDefinition> itemDefinition;
    private List<TDRGElement> drgElement;
    private List<TArtifact> artifact;
    private List<TElementCollection> elementCollection;
    private List<TBusinessContextElement> businessContextElement;
    private DMNDI dmndi;
    private String expressionLanguage;
    private String typeLanguage;

[...] 

How should I approach this problem from architectural perspective? How should I design my app? Provide interfaces/classes that extend elements from this library?

1 Answers

I'd prefer NoSQL such as MongoDB for storing these types of objects. If you have to use SQL for some reason, then go with JSON.

Related