All Downloads are FREE. Search and download functionalities are using the official Maven repository.

org.eclipse.persistence.nosql.annotations.NoSql Maven / Gradle / Ivy

There is a newer version: 5.0.0-B08
Show newest version
/*
 * Copyright (c) 2011, 2024 Oracle and/or its affiliates. All rights reserved.
 *
 * This program and the accompanying materials are made available under the
 * terms of the Eclipse Public License v. 2.0 which is available at
 * http://www.eclipse.org/legal/epl-2.0,
 * or the Eclipse Distribution License v. 1.0 which is available at
 * http://www.eclipse.org/org/documents/edl-v10.php.
 *
 * SPDX-License-Identifier: EPL-2.0 OR BSD-3-Clause
 */

// Contributors:
//     Oracle - initial API and implementation
package org.eclipse.persistence.nosql.annotations;

import static java.lang.annotation.ElementType.TYPE;
import static java.lang.annotation.RetentionPolicy.RUNTIME;

import java.lang.annotation.Retention;
import java.lang.annotation.Target;

/**
 * An NoSQL (No SQL, or Not Only SQL) database is any non-relational data source.
* This can include:
*
    *
  • NoSQL databases such as Oracle NoSQL, MongoDB, etc. *
  • XML databases *
  • Distributed cache stores such as Oracle Coherence *
  • Object databases *
  • Legacy databases, gateways and transaction system such as VSAM, ADA, CICS, IMS, MQSeries, Tuxedo, etc. *
  • ERP systems, such as SAP *
*

* EclipseLink allows NoSQL data to be mapped to objects, and accessed through JPA and EclipseLink's APIs. *

* Entity and Embeddable objects can be used to map NoSQL data. * Most NoSQL data is hierarchical in form so usage of embeddable objects is common. * Some NoSQL adaptors support XML data, so NoSQL mapped objects can use XML mappings when * mapping to XML. *

* EclipseLink support NoSQL data access through the JavaEE Connector Architecture. * A JCA adaptor is required to map NoSQL data, this may be provided by EclipseLink, * provided by a third party such as Attunity, or custom-built. * * @see org.eclipse.persistence.eis.EISDescriptor * @author James Sutherland * @since EclipseLink 2.4 */ @Target({TYPE}) @Retention(RUNTIME) public @interface NoSql { /** * (Required) The database name of the database structure type. */ String dataType() default ""; /** * (Optional) Defines the order of the fields contained in the database structure type. */ DataFormatType dataFormat() default DataFormatType.XML; }





© 2015 - 2025 Weber Informatics LLC | Privacy Policy