Guide list
Monger documentation is organized as a number of guides, covering all kinds of topics.
We recommend that you read these guides, if possible, in this order:
This guide combines an overview of Monger with a quick tutorial that helps you to get started with it.
It should take about 10 minutes to read and study the provided code examples. This guide covers:
- Feature of Monger, why Monger was created
- Clojure and MongoDB version requirements
- How to add Monger dependency to your project
- Basic operations (create, read, update, delete)
- Overview of Monger Query DSL
- Overview of how Monger integrates with libraries like clojure.data.json and JodaTime.
This guide covers:
- Connecting to MongoDB using connection options
- Connecting to MongoDB using connection URI
- Tuning database connection (concurrency level, automatic reconnection, timeouts, etc)
- Connecting in PaaS environments, for example, MongoHQ add-on on Heroku
- Choosing default database
- Working with multiple databases
This guide covers:
- Inserting documents
- Inserting batches of documents
- Checking database responses
- Validating data with Validateur, a Clojure validation library
- Setting default write concern
- Changing write concern for individual operations
- Working with multiple databases
This guide covers:
- Querying documents with Clojure
- Using query operators with Clojure
- Working with database cursors
- Using Monger Query DSL
- Working with multiple databases
This guide covers:
- Updating documents with Clojure
- Using atomic operations with Clojure
- Upserting documents
- Updating a single document vs multiple documents
- Overriding default write concern for individual operations
- Working with multiple databases
This guide covers:
- Deleting documents with Clojure
- Deleting a single document vs multiple documents
- Working with multiple databases
This guide covers:
- Creating indexes on MongoDB collections
- Dropping indexes
- Creating a capped collection
- Using MongoDB TTL collections (MongoDB 2.2+)
- Reindexing a collection
- Dropping a collection
This guide covers:
- Monger's philosophy of "having batteries included"
- Integration with
clojure.data.json
- Integration with
clj-time
and Joda Time
- Integration with
clojure.core.cache
: MongoDB-based Clojure cache protocol implementation
- Using MongoDB-backed Ring session stores
- Basic Noir integration example
This guide covers:
- Using Map/Reduce with Clojure
- Storing and loading JavaScript functions from classpath
This guide covers:
- Storing files on GridFS from Clojure
- Loading files from GridFS with Clojure
This guide covers:
- Using MongoDB 2.2 Aggregation Framework with Clojure
This guide covers:
- Performing MongoDB commands with Clojure
This guide covers miscellaneous topics:
Tell Us What You Think!
Please take a moment to tell us what you think about this guide on Twitter or the Monger mailing list
Let us know what was unclear or what has not been covered. Maybe you do not like the guide style or grammar or discover spelling mistakes. Reader feedback is key to making the documentation better.