Ah finally, an overpriced device to show off my overengineered, 10s layers of abstraction of SimpleShitLotsGoodLibrariesButWeDecidedToMakeOurOwnFactory.
Yeah that can get ugly but it’s still better than writing native queries because you know it’s gonna automatically translate to any db specific sql flavour.
When they get a bit too long and ugly I either write default methods using specifications or I create a more concisely named default method that wraps the verbose monster.
you forgot about AbstractSimpleShitLotsGoodLibrariesButWeDecidedToMakeOurOwn and AbstractSimpleShitLotsGoodLibrariesButWeDecidedToMakeOurOwnAbstractFactory
Ah finally, an overpriced device to show off my overengineered, 10s layers of abstraction of
SimpleShitLotsGoodLibrariesButWeDecidedToMakeOurOwnFactory
.Don’t forget the repository methods! getAllByTenantAndActiveAndCreatedAfterAndFirstNameContainsOrderByLastName
Lmao you just activate my ptsd.
Stop it!
But the stakeholders said they needed two new filter criteria!
Yeah that can get ugly but it’s still better than writing native queries because you know it’s gonna automatically translate to any db specific sql flavour.
When they get a bit too long and ugly I either write default methods using specifications or I create a more concisely named default method that wraps the verbose monster.
Or you could rename your fields to single characters! getAllByAAndBOrderByC
Now I feel dirty…
you forgot about AbstractSimpleShitLotsGoodLibrariesButWeDecidedToMakeOurOwn and AbstractSimpleShitLotsGoodLibrariesButWeDecidedToMakeOurOwnAbstractFactory
No
FactoryFatoryFactory
? I’m disappointed. (Typo is intentional)