How koder95/book-shop-online works
This is a Spring-based online book shop. Customers browse and search books, manage a cart, and place orders; administrators manage the catalog and order status. Authentication and role-based access protect the API. Sampled controllers show calls into book, category, and order services; the tree also identifies cart and authentication subsystems, but their wiring and persistence details were not sampled, so uncertain links are omitted.
Main entry points: CategoryController.java Category API · BookController.java Book API · OrderController.java Order API · BookServiceImpl.java Book operations
Components 18
API and access
- Book API
src/main/java/pl/koder95/bso/controller/BookController.java - Category API
src/main/java/pl/koder95/bso/controller/CategoryController.java - Cart API
src/main/java/pl/koder95/bso/controller/CartController.java - Order API
src/main/java/pl/koder95/bso/controller/OrderController.java - Authentication API
src/main/java/pl/koder95/bso/controller/AuthenticationController.java
Book catalog
- Book operations
src/main/java/pl/koder95/bso/service/impl/BookServiceImpl.java - Category operations
src/main/java/pl/koder95/bso/service/impl/CategoryServiceImpl.java - Book search
src/main/java/pl/koder95/bso/repository/book/BookSpecificationManager.java
Cart and orders
- Cart operations
src/main/java/pl/koder95/bso/service/impl/ShoppingCartServiceImpl.java - Order operations
src/main/java/pl/koder95/bso/service/impl/OrderServiceImpl.java - Cart factory
src/main/java/pl/koder95/bso/factory/impl/ShoppingCartFactoryImpl.java
Identity and security
- Authentication
src/main/java/pl/koder95/bso/service/impl/AuthenticationServiceImpl.java - User operations
src/main/java/pl/koder95/bso/service/impl/UserServiceImpl.java - User lookup
src/main/java/pl/koder95/bso/security/CustomUserDetailsService.java - JWT utilities
src/main/java/pl/koder95/bso/security/JwtUtil.java - JWT filter
src/main/java/pl/koder95/bso/security/JwtAuthenticationFilter.java
Other components
- Customer
- Administrator
Connections 15
- Customer → Book API: browse/search
- Administrator → Book API: manage books
- Customer → Category API: browse categories
- Administrator → Category API: manage categories
- Customer → Cart API: manage cart
- Customer → Order API: place/view orders
- Administrator → Order API: change status
- Customer → Authentication API: authenticate
- Book API → Book operations: invoke
- Book operations → Book search: compile search
- Category API → Category operations: invoke
- Category API → Book operations: find category books
- Order API → Order operations: invoke
- Authentication → JWT utilities: generate token
- User lookup → User operations