74 lines
2.3 KiB
Markdown
74 lines
2.3 KiB
Markdown
# Project Requirements From Developer
|
|
|
|
## Source
|
|
|
|
Captured on 2026-04-27 during the Trellis bootstrap-guidelines task from
|
|
developer-provided project facts.
|
|
|
|
## Architecture And Stack
|
|
|
|
- The system uses B/S architecture with a typical layered design.
|
|
- The application stack is JSP + Servlet, MySQL, Tomcat, developed in IDEA.
|
|
- The layers are presentation, controller, business/service, DAO, and data.
|
|
|
|
## Data Layer
|
|
|
|
MySQL is the data layer and stores:
|
|
|
|
- Book information.
|
|
- Book category information.
|
|
- Reader information.
|
|
- Borrowing records.
|
|
- Administrator information.
|
|
- Role and permission information.
|
|
- System logs.
|
|
|
|
Core entity tables should include book information, book categories, reader
|
|
information, borrowing records, administrators, role permissions, and system
|
|
logs. Use primary keys and foreign keys to preserve data integrity.
|
|
|
|
## DAO Layer
|
|
|
|
The data access layer uses DAO classes to perform database CRUD. DAOs should own
|
|
SQL/database access concerns and should not contain presentation or business
|
|
workflow logic.
|
|
|
|
## Business And Service Layer
|
|
|
|
The service layer handles:
|
|
|
|
- Book warehousing/intake.
|
|
- Borrowing and returning.
|
|
- Inventory status updates.
|
|
- Overdue statistics.
|
|
- Permission checks.
|
|
|
|
## Controller Layer
|
|
|
|
Servlet controllers handle request dispatch, parameter validation, and result
|
|
return. Controllers should coordinate request/response flow and call services
|
|
for business behavior.
|
|
|
|
## Presentation Layer
|
|
|
|
JSP/CSS pages handle page display and user interaction.
|
|
|
|
The frontend approach is image-first: UI should be designed or generated as
|
|
images first, then JSP/CSS pages should restore and implement the image
|
|
faithfully.
|
|
|
|
## Core Modules
|
|
|
|
- Login and permission management for administrator, librarian, and reader
|
|
roles.
|
|
- Book information management for create, update, delete, category
|
|
maintenance, and inventory status.
|
|
- Reader information management for profiles, borrowing eligibility, and
|
|
contact information.
|
|
- Borrowing and return management for borrow, return, renew, overdue handling,
|
|
and automatic collection status updates.
|
|
- Book search and statistics for combined search by title, author, category,
|
|
and ID, plus borrowing rankings, inventory reports, and overdue reports.
|
|
- System maintenance and logs for key operation logs, data backup support, and
|
|
exception tracing.
|