mongodb-dao-es6

Generic Data Access Object for MongoDB

Get Started Today!

Download instructions

npm install mongodb-dao-es6

Explanation:

  • npm install: This command is used to install packages from the npm registry.
  • mongodb-dao-es6: This is the name of the package you want to install.

Additional Notes:

  • Node.js: Make sure you have Node.js installed on your system. You can download it from https://nodejs.org/.
  • Package Manager: You'll need to have npm (Node Package Manager) installed. It's included with Node.js.
  • Verification: After installation, you can verify the package by running npm ls mongodb-dao-es6 in your terminal.

"Effortless MongoDB Interaction: A Powerful, Standard-Based Data Access Object"

This npm package provides a streamlined, developer-friendly way to interact with your MongoDB database.

Key Features:

  • Simplified CRUD Operations: Easily perform all common MongoDB operations (Create, Read, Update, Delete) with a clean, consistent API.
  • Formatted Output: Get your data in a clear, readable format, making it easy to work with and analyze.
  • Paginated Results: Retrieve large datasets efficiently with pagination, saving you time and resources.
  • Built on MongoDB Driver: Leverage the power of the standard MongoDB driver for seamless integration and compatibility.

Why Choose This Package?

  • Boost Productivity: Focus on your application logic, not boilerplate MongoDB code.
  • Maintain Consistency: Follow a familiar, standard-based approach for a more predictable and maintainable codebase.
  • Enhanced Readability: Enjoy well-formatted output that's easy to understand and work with.

example usage:

import { MongoClient } from "mongodb";
import BaseDao from "mongodb-dao-es6";

async function main() {
  const uri = "your_mongodb_connection_string";
  const client = new MongoClient(uri, { useNewUrlParser: true, useUnifiedTopology: true });

  try {
    await client.connect();
    const config = {
      dbName: "your_database_name",
      collection: "your_collection_name",
      sort: { _id: -1 },
      pageSize: 10,
    };

    const baseDao = new BaseDao(config, client);

    // Create a new document
    const newData = { name: "John Doe", age: 30 };
    const createdData = await baseDao.create(newData);
    console.log("Created Data:", createdData);

    // Find documents
    const foundData = await baseDao.find();
    console.log("Found Data:", foundData);
		
    // Find documents
		baseDao.match = { name: "John Doe", age: 30 };
    const foundData = await baseDao.find();
    console.log("Found Data:", foundData);

    // Update a document
    baseDao.id = createdData[0]._id;
    const updatedData = await baseDao.update({ age: 31 });
    console.log("Updated Data:", updatedData);

    // Delete a document
    const deletedData = await baseDao.delete();
    console.log("Deleted Data:", deletedData);

  } catch (err) {
    console.error(err);
  } finally {
    await client.close();
  }
}

main().catch(console.error);

Explanation:

  • Import Statements: The code imports the necessary modules: MongoClient from the mongodb package and BaseDao from the mongodb-dao-es6 package.
  • Connection Setup: It establishes a connection to your MongoDB database using the provided connection string (uri).
  • Configuration: The config object defines the database name, collection name, sorting criteria, and page size for pagination.
  • BaseDao Instance: A new instance of the BaseDao class is created, using the provided configuration and the established client.
  • CRUD Operations: The code demonstrates the following CRUD operations:
    • Create: The create method is used to insert a new document into the collection.
    • Find: The find method retrieves documents from the collection.
    • Update: The update method modifies an existing document.
    • Delete: The delete method removes a document from the collection.
  • Error Handling: A try...catch block handles potential errors during the database operations.
  • Connection Closure: The finally block ensures that the database connection is closed properly, even if an error occurs.

Important Notes:

  • Replace Placeholders: Remember to replace "your_mongodb_connection_string", "your_database_name", and "your_collection_name" with your actual MongoDB connection details.
  • Package Installation: Make sure you have the mongodb-dao-es6 package installed in your project. You can install it using npm install mongodb-dao-es6.

Let me know if you have any other questions.