-
Notifications
You must be signed in to change notification settings - Fork 0
No Hard Annotation for Schema Required
Use same class for persisting data over multiple data stores in different schema using Kundera now ! In our latest release we have removed the compulsion of binding an entity with hard annotation for schema and its pu.
A typical Entity class in Kundera :
@Entity
@Table(name = "KunderaUser", schema = "KunderaMetaDataTest@metaDataTest")
public class KunderaUser
{
@Id
@Column(name = "USER_ID")
private String userId;
Mentioned below are the ways in which you can create Entity classes and use with Kundera now.
As per JPA specifications , the default persistence unit and schema name are picked from persistence unit for which the EntityManagerFactory have been instantiated in case when no table annotation is given. The table name is same as entity class name.
@Entity
public class PersonDetail
{
/** The person id. */
@Id
private String personId;
/** The first name. */
@Column(name = "first_name")
private String firstName;
This class can also be mapped in multiple persistence-unit and its schema name is picked from PU definition.
<persistence-unit name="noAnnotationAddMongo">
<provider>com.impetus.kundera.KunderaPersistence</provider>
<class>com.impetus.kundera.tests.entities.PersonDetail</class>
....
</persistence-unit>
As per JPA specifications , the default persistence unit and schema name in this case will be picked from persistence unit for which the EntityManagerFactory have been instantiated. The table name will be the one given in @table Annotation.
@Entity
@Table(name = "person")
public class PersonDetail
{
/** The person id. */
@Id
private String personId;
/** The first name. */
@Column(name = "first_name")
private String firstName;
/** The last name. */
@Column(name = "last_name")
private String lastName;
-
Datastores Supported
- Releases
-
Architecture
-
Concepts
-
Getting Started in 5 minutes
-
Features
- Object Mapper
- Polyglot Persistence
- Queries Support
- JPQL (JPA Query Language)
- Native Queries
- Batch insert update
- Schema Generation
- Primary Key Auto generation
- Transaction Management
- REST Based Access
- Geospatial Persistence and Queries
- Graph Database Support
-
Composite Keys
-
No hard annotation for schema
-
Support for Mapped superclass
-
Object to NoSQL Data Mapping
-
Cassandra's User Defined Types and Indexes on Collections
-
Support for aggregation
- Scalar Queries over Cassandra
- Connection pooling using Kundera Cassandra
- Configuration
- [Kundera with Couchdb] (https://github.com/impetus-opensource/Kundera/wiki/Kundera-with--Couchdb)
- [Kundera with Elasticsearch] (https://github.com/impetus-opensource/Kundera/wiki/Kundera-with-Elasticsearch)
- [Kundera with HBase] (https://github.com/impetus-opensource/Kundera/wiki/Kundera-with-HBase)
- [Kundera with Kudu] (https://github.com/impetus-opensource/Kundera/wiki/Kundera-with-Kudu)
- [Kundera with MongoDB] (https://github.com/impetus-opensource/Kundera/wiki/Kundera-with-MongoDB)
- [Kundera with OracleNoSQL] (https://github.com/impetus-opensource/Kundera/wiki/Kundera-OracleNoSQL)
- [Kundera with Redis] (https://github.com/impetus-opensource/Kundera/wiki/Kundera-over-Redis)
- [Kundera with Spark] (https://github.com/impetus-opensource/Kundera/wiki/Kundera-with-Spark)
-
Extend Kundera
- Sample Codes and Examples
- [Blogs and Articles] (https://github.com/impetus-opensource/Kundera/wiki/Blogs--and-Articles)
-
Tutorials
* Kundera with Openshift
* Kundera with Play Framework
* Kundera with GWT
* Kundera with JBoss
* Kundera with Spring
-
Performance
-
Troubleshooting
-
FAQ
- Production deployments
- Feedback