Package name: Plural vs Singular (controllers vs controller, services vs service etc..)
Packages assists with organization of code and resolution of naming conflicts. If a package is named in the singular, it doesn't mean that each member of the package is an instance of the package; it contains related but heterogeneous concepts. If it is named in the plural (as they often are), I would expect that the package contains homogeneous concepts. (https://softwareengineering.stackexchange.com/questions/75919/should-pac...)
Normally we follow naming package in singular but plurals can also be used and it should be named properly . Refered below link
Collection URLs in REST (expenses vs expense)
Collections are set of resources, e.g Companies is the collection of Company resource.
The resource should always be plural in the API endpoint and if we want to access one instance of the resource, we can always pass the id in the URL.
Use “plural” name to denote collection resource archetype.
Spring Data Rest vs Spring Data JPA vs Spring JDBC
NOTE: This is a running note.