/Pos_System_BackEnd

Primary LanguageJavaMIT LicenseMIT

In-Memory POS System API

Overview

This project is a comprehensive API for the existing front-end POS system. It is developed using Java EE, integrating relevant specifications such as Servlet, JSON, and JNDI.

Features

  • Basic CRUD Operations
  • Fundamental Validations
  • Implementation of Appropriate Design Patterns with Thoughtful Packaging
  • Database Integration (SQL) with JNDI
  • Proper Logging Mechanism
  • API Documentation (Postman may be utilized for this purpose)

Technologies Used

  • Java EE
  • Servlet
  • JSON
  • JNDI
  • Hibernate (for database integration)

Prerequisites

  • Java 11
  • Apache Tomcat 10.1.17
  • Database (MySQL)
  • Postman for API testing

Setup

  1. Clone the repository:
  2. git clone https://github.com/KasunKVI/Pos_System/---
  3. Configure your database connection in src/main/resources/hibernate.cfg.xml.
  4. Build and deploy the project to your Java EE server.
  5. Access the API at http://localhost:8080/Pos_System.

Project Structure

  • src/main/java/software/kasunkavinda/pos_system_backend/api: Java source files
  • src/main/resources: Configuration files
  • src/main/java/software/kasunkavinda/pos_system_backend/entity: Entity Classes
  • src/main/java/software/kasunkavinda/pos_system_backend/dto: DTO Classes
  • src/main/java/software/kasunkavinda/pos_system_backend/filter: CORS Filter
  • src/main/java/software/kasunkavinda/pos_system_backend/util: Factory Configuration
  • docs: API documentation

How to Use

  1. Perform CRUD operations using the provided API endpoints.
  2. Refer to the API documentation in the docs folder for detailed information on each endpoint.

Logging

Logging in this project is handled by slf4j. Logs can be found in the console

API Documentation

The API is documented using Postman. You can find the Postman collection in the docs folder.

License

This project is licensed under the MIT License.

Frontend Repository

If you are interested in the frontend part of the POS system, you can find the corresponding GitHub repository at the following link:

Frontend Repository

Feel free to explore and contribute to the frontend codebase for a complete understanding of the POS system.

Wishing you the best of success in your coding endeavors!