Clinic Management System is a backend application designed to assist doctors and patients in managing medical centers and documents. This Spring Boot application provides a robust backend for handling various functionalities, including database interactions and API services.
- Spring Boot Framework: Utilizes Spring Boot for rapid development and deployment.
- JPA ORM: Manages database operations using Java Persistence API (JPA).
- Database Support: Integrates with MySQL and Microsoft SQL Server databases.
- Firebase Integration: Provides Firebase admin functionalities for authentication and data management.
- PDF Generation: Uses iTextPDF for creating and manipulating PDF documents.
- Secure Communications: Incorporates Bouncy Castle for cryptographic operations.
- Java 11: Ensure you have JDK 11 installed on your machine.
- Maven: You need Apache Maven to manage the project's dependencies and build process. Install Maven from Apache Maven.
- Clone the repository:
git clone https://github.com/saiedoc/MedicalCenterBackendApp.git
- Navigate to the project directory:
cd MedicalCenterBackendApp
- Install the necessary dependencies:
mvn clean install
To run the Spring Boot application, use:
mvn spring-boot:run
This will start the Spring Boot application on the default port (8080). You can configure the port and other settings in the application.properties
file.
- src/main/java: Contains the source code for the application.
- src/main/resources: Contains application configuration files and static resources.
- src/test/java: Contains unit and integration tests.
- pom.xml: Maven configuration file with project dependencies and build settings.
The project is built using the following key libraries and frameworks:
- Spring Boot: For building the application.
- Spring Data JPA: For data access and ORM.
- MySQL Connector/J: For MySQL database connectivity.
- Microsoft JDBC Driver for SQL Server: For SQL Server database connectivity.
- Firebase Admin SDK: For Firebase services.
- iTextPDF: For PDF generation.
- Bouncy Castle: For cryptographic operations.
- Lombok: For reducing boilerplate code.
- REST APIs: Implemented for interaction between frontend and backend.
- Singletons & OOP: Utilized design patterns and object-oriented programming principles.
- Database Architecture: Includes MySQL and SQL Server database schemas.
- Saied Aussi
- Eyad Al Sayed
- Caesar Farah
- Abd Al Raheem Khoulani
- Salem Al Aushoor
This project is licensed under the ISC License.