Service Class Conventions Skill
-
Service classes must be of type interface.
-
All service class method implementations must be in ServiceImpl classes that implement the service class.
-
All ServiceImpl classes must be annotated with @Service.
-
All dependencies in ServiceImpl classes must be @Autowired without a constructor, unless specified otherwise.
-
Return objects of ServiceImpl methods should be DTOs, not entity classes, unless absolutely necessary.
-
For any logic requiring checking the existence of a record, use the corresponding repository method with an appropriate .orElseThrow lambda method.
-
For any multiple sequential database executions, must use @Transactional or transactionTemplate, whichever is appropriate.
Memory Protocol (MANDATORY)
Before starting:
cat .claude/context/memory/learnings.md
After completing: Record any new patterns or exceptions discovered.
ASSUME INTERRUPTION: Your context may reset. If it's not in memory, it didn't happen.