49 lines
1.6 KiB
Markdown
49 lines
1.6 KiB
Markdown
# Pet Shop Desktop (JavaFX)
|
|
|
|
Desktop pet shop management app built with JavaFX and MySQL.
|
|
|
|
Made by **Group 2**, Shiv, Nikitha, Alex, Harkamal.
|
|
|
|
## Requirements
|
|
|
|
- IntelliJ IDEA (Community or Ultimate)
|
|
- Java 25+
|
|
- Maven (handled through IntelliJ)
|
|
- Docker and Docker Compose (for the local MySQL container)
|
|
|
|
## Database setup (IntelliJ)
|
|
|
|
1. Open the project in IntelliJ.
|
|
2. Open **View → Tool Windows → Services**.
|
|
3. Add a Docker connection if needed, then open the **Docker** section in Services.
|
|
4. Start the Compose stack from `docker-compose.yml` (Compose Up, or Start).
|
|
5. Confirm the `mysql` service is running.
|
|
|
|
The container uses `mysql:8.4`, creates the `Petstoredb` database, and imports `Petstoredata.sql`.
|
|
|
|
## App configuration
|
|
|
|
An example connection file is provided at `connectionpetstore.properties.example`. Copy it to `connectionpetstore.properties` and edit the values to match the local database setup.
|
|
|
|
## Run the app (IntelliJ, Maven)
|
|
|
|
1. Open **View → Tool Windows → Maven**.
|
|
2. Click **Reload All Maven Projects** if the dependencies have not loaded yet.
|
|
3. In the Maven tool window, expand **Plugins → javafx**.
|
|
4. Double click **javafx:run**.
|
|
|
|
Optional, run a clean first:
|
|
- In the Maven tool window, expand **Lifecycle** and run **clean**.
|
|
|
|
## Default accounts
|
|
|
|
On first run, the app creates a `users` table (if missing) and seeds two accounts:
|
|
|
|
- Admin: `admin` / `admin123`
|
|
- Staff: `staff` / `staff123`
|
|
|
|
## Notes
|
|
|
|
- `connectionpetstore.properties` is gitignored so credentials are not committed.
|
|
- If the app cannot connect to MySQL, confirm the Compose stack is running and MySQL is available.
|