A Spring Boot-based Point of Sale system with secure authentication and database management.
Before you begin, ensure you have the following installed:
- Java Development Kit (JDK) 17
- Maven (latest version)
- MySQL Server 8.0 or higher
- Git
- An IDE (IntelliJ IDEA or VS Code recommended)
git clone https://github.com/rickandrew2/PoS.git
cd PoS- Install MySQL Server if not already installed
- Create a new database for the project
- Update the database configuration in
src/main/resources/application.propertieswith your MySQL credentials
- Open IntelliJ IDEA
- Select "Open" and choose the project directory
- Wait for Maven to download all dependencies
- Install the following plugins:
- Lombok
- Spring Boot
- Maven
- Open VS Code
- Open the project folder
- Install the following extensions:
- Java Extension Pack
- Spring Boot Extension Pack
- Maven for Java
- Wait for Maven to download all dependencies
mvn spring-boot:run- Run the main class
PosSystemApplication
The application will start on http://localhost:8080
PoS/
├── src/
│ ├── main/
│ │ ├── java/
│ │ └── resources/
│ └── test/
├── pom.xml
└── README.md
- Spring Boot 3.2.2
- Spring Security
- Spring Data JPA
- MySQL Connector
- Thymeleaf
- Lombok
- JWT for authentication
- OpenCSV
-
Port Conflict
- Error: "Web server failed to start. Port 8080 was already in use"
- Solution: Change the port in
application.propertiesor stop the application using port 8080
-
Database Connection
- Error: "Cannot connect to database"
- Solution:
- Verify MySQL service is running
- Check database credentials in
application.properties - Ensure database exists
-
Maven Dependencies
- Error: "Failed to download dependencies"
- Solution:
- Check internet connection
- Verify Maven settings
- Try running
mvn clean install
-
Java Version
- Error: "Unsupported class file major version"
- Solution: Ensure you're using JDK 17 or higher
- Create a new branch for your feature
- Make your changes
- Submit a pull request
If you encounter any issues or have questions, please create an issue in the repository.