|
| 1 | +# Java Driver for Apache Cassandra® |
| 2 | + |
| 3 | +:warning: The java-driver has recently been donated by Datastax to The Apache Software Foundation and the Apache Cassandra project. Bear with us as we move assets and coordinates. |
| 4 | + |
| 5 | +[](https://opensource.org/licenses/Apache-2.0) |
| 6 | +[](https://maven-badges.herokuapp.com/maven-central/org.apache.cassandra/java-driver-core) |
| 7 | + |
| 8 | +*If you're reading this on github.com, please note that this is the readme for the development |
| 9 | +version and that some features described here might not yet have been released. You can find the |
| 10 | +documentation for latest version through [DataStax Docs] or via the release tags, e.g. |
| 11 | +[4.17.0](https://github.com/datastax/java-driver/tree/4.17.0).* |
| 12 | + |
| 13 | +A modern, feature-rich and highly tunable Java client library for [Apache Cassandra®] \(2.1+) and |
| 14 | +[DataStax Enterprise] \(4.7+), and [DataStax Astra], using exclusively Cassandra's binary protocol |
| 15 | +and Cassandra Query Language (CQL) v3. |
| 16 | + |
| 17 | +[DataStax Docs]: http://docs.datastax.com/en/developer/java-driver/ |
| 18 | +[Apache Cassandra®]: http://cassandra.apache.org/ |
| 19 | + |
| 20 | +## Getting the driver |
| 21 | + |
| 22 | +The driver artifacts are published in Maven central, under the group id [com.datastax.oss]; there |
| 23 | +are multiple modules, all prefixed with `java-driver-`. |
| 24 | + |
| 25 | +```xml |
| 26 | +<dependency> |
| 27 | + <groupId>org.apache.cassandra</groupId> |
| 28 | + <artifactId>java-driver-core</artifactId> |
| 29 | + <version>${driver.version}</version> |
| 30 | +</dependency> |
| 31 | + |
| 32 | +<dependency> |
| 33 | + <groupId>org.apache.cassandra</groupId> |
| 34 | + <artifactId>java-driver-query-builder</artifactId> |
| 35 | + <version>${driver.version}</version> |
| 36 | +</dependency> |
| 37 | + |
| 38 | +<dependency> |
| 39 | + <groupId>org.apache.cassandra</groupId> |
| 40 | + <artifactId>java-driver-mapper-runtime</artifactId> |
| 41 | + <version>${driver.version}</version> |
| 42 | +</dependency> |
| 43 | +``` |
| 44 | + |
| 45 | +Note that the query builder is now published as a separate artifact, you'll need to add the |
| 46 | +dependency if you plan to use it. |
| 47 | + |
| 48 | +Refer to each module's manual for more details ([core](/manual/core/README.md), [query |
| 49 | +builder](/manual/query_builder/README.md), [mapper](/manual/mapper/README.md)). |
| 50 | + |
| 51 | +[com.datastax.oss]: http://search.maven.org/#search%7Cga%7C1%7Cg%3A%22com.datastax.oss%22 |
| 52 | + |
| 53 | +## Compatibility |
| 54 | + |
| 55 | +The driver is compatible with Apache Cassandra® 2.1 and higher, DataStax Enterprise 4.7 and |
| 56 | +higher, and DataStax Astra. |
| 57 | + |
| 58 | +It requires Java 8 or higher. |
| 59 | + |
| 60 | +Disclaimer: Some DataStax/DataStax Enterprise products might partially work on big-endian systems, |
| 61 | +but DataStax does not officially support these systems. |
| 62 | + |
| 63 | +## Migrating from previous versions |
| 64 | + |
| 65 | +Java Driver 4 is **not binary compatible** with previous versions. However, most of the concepts |
| 66 | +remain unchanged, and the new API will look very familiar to 2.x and 3.x users. |
| 67 | + |
| 68 | +See the [upgrade guide](upgrade_guide/README.md) for details. |
| 69 | + |
| 70 | +## Error Handling |
| 71 | + |
| 72 | +See the [Cassandra error handling done right blog](https://www.datastax.com/blog/cassandra-error-handling-done-right) for error handling with the Java Driver for Apache Cassandra™. |
| 73 | + |
| 74 | +## Useful links |
| 75 | + |
| 76 | +* [Manual](/manual/README.md) |
| 77 | +* [API docs] |
| 78 | +* Bug tracking: [JIRA] |
| 79 | +* [Mailing list] |
| 80 | +* [Changelog] |
| 81 | +* [FAQ] |
| 82 | + |
| 83 | +[API docs]: https://docs.datastax.com/en/drivers/java/4.17 |
| 84 | +[JIRA]: https://issues.apache.org/jira/issues/?jql=project%20%3D%20CASSJAVA%20ORDER%20BY%20key%20DESC |
| 85 | +[Mailing list]: https://groups.google.com/a/lists.datastax.com/forum/#!forum/java-driver-user |
| 86 | +[Changelog]: changelog/README.md |
| 87 | +[FAQ]: faq/README.md |
| 88 | + |
| 89 | +## License |
| 90 | + |
| 91 | +© The Apache Software Foundation |
| 92 | + |
| 93 | +Licensed under the Apache License, Version 2.0 (the "License"); |
| 94 | +you may not use this file except in compliance with the License. |
| 95 | +You may obtain a copy of the License at |
| 96 | + |
| 97 | +http://www.apache.org/licenses/LICENSE-2.0 |
| 98 | + |
| 99 | +Unless required by applicable law or agreed to in writing, software |
| 100 | +distributed under the License is distributed on an "AS IS" BASIS, |
| 101 | +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| 102 | +See the License for the specific language governing permissions and |
| 103 | +limitations under the License. |
| 104 | + |
| 105 | +---- |
| 106 | + |
| 107 | +Apache Cassandra, Apache, Tomcat, Lucene, Solr, Hadoop, Spark, TinkerPop, and Cassandra are |
| 108 | +trademarks of the [Apache Software Foundation](http://www.apache.org/) or its subsidiaries in |
| 109 | +Canada, the United States and/or other countries. |
| 110 | + |
| 111 | +Binary artifacts of this product bundle Java Native Runtime libraries, which is available under the Eclipse Public License version 2.0. |
0 commit comments