Yesterday while
working on my project, I got one requirement where I need to store
list of Array into the database, I checked on Google, went through
various site but didn't get much information. Everyone talks about
creating new entity and do onetomany relationship BUT I wanted to
create a collection of basic types.
Finally I come across @ElementCollection annotation provided by JPA 2.0 which resolves my problem.
Problem :
Input JSON which we need to store in DB:
{
"schemas": ["urn:scim:schemas:core:1.0", "urn:scim:schemas:extension:enterprise:1.0"]
}
Where schemas is Array of String.
Solution :
Just add following annotation in your POJO i,e
@ElementCollection
@CollectionTable(name = "SCIM_SCHEMAS", joinColumns = @JoinColumn(name = "SCHEMA_ID"))
@Column(name = "SCIM_SCHEMA")
private List<String> schemas;
It will create the table named "SCIM_SCHEMAS" having columns 'SCHEMA_ID' and 'SCIM_SCHEMA'
For details check section 2.2.5.3.3. Collection of basic types or embeddable objects or feel free to comment :)
Finally I come across @ElementCollection annotation provided by JPA 2.0 which resolves my problem.
Problem :
Input JSON which we need to store in DB:
{
"schemas": ["urn:scim:schemas:core:1.0", "urn:scim:schemas:extension:enterprise:1.0"]
}
Where schemas is Array of String.
Solution :
Just add following annotation in your POJO i,e
@ElementCollection
@CollectionTable(name = "SCIM_SCHEMAS", joinColumns = @JoinColumn(name = "SCHEMA_ID"))
@Column(name = "SCIM_SCHEMA")
private List<String> schemas;
It will create the table named "SCIM_SCHEMAS" having columns 'SCHEMA_ID' and 'SCIM_SCHEMA'
For details check section 2.2.5.3.3. Collection of basic types or embeddable objects or feel free to comment :)