Book catalog management for the BookStore system
The Book Management Plugin handles all book catalog operations in the BookStore system. It provides a modern interface for managing books with advanced search capabilities and inventory control.
- 📚 Complete Book Management: Create, read, update, and delete books
- 🔍 Advanced Search: Search by title, author, or ISBN
- 📊 Inventory Control: Track available copies and total stock
- ✅ Available Filter: Show only books with available copies
- 🔢 Numeric Validation: Smart validation for year and copies fields
- 📱 Modern TableView: Responsive table with organized columns
- 🔄 Auto-refresh: Automatic updates when switching tabs
book-plugin/
├── src/main/java/
│ └── br/edu/ifba/inf008/plugins/
│ ├── BookPlugin.java # Main plugin class
│ └── book/
│ ├── persistence/
│ │ ├── JPAUtil.java # Delegation to core JPAUtil
│ │ └── BookDAO.java # Database operations
│ └── ui/
│ └── BookManagementController.java # JavaFX Controller
├── src/main/resources/
│ └── br/edu/ifba/inf008/plugins/book/ui/
│ ├── book-management.fxml # FXML Interface
│ ├── icons/ # Images and icons
│ └── css/
│ └── book-styles.css # Custom styles
└── src/test/
├── java/ # Unit tests
└── resources/
└── META-INF/
└── persistence.xml # Test configuration (H2)
- Advanced search with multiple fields
- Available books filtering
- Test environment detection
- Transaction safety
- TableView with formatted columns
- Real-time numeric validation
- Search with availability filter
- Form validation and confirmation dialogs
- Add Book: Fill form with title, author, ISBN, year, and copies
- Search: Use search field with title, author, or ISBN
- Filter: Toggle "Available Only" to show books with copies
- Update: Select book from table and modify details
- Delete: Remove books with confirmation dialog
- BookStore Core System
- JavaFX 17+
- Hibernate 6.5.2+
- H2 (testing) / MariaDB (production)