Don't cherry-pick:
- receipts may also bear time when purchased, let's record this as well and
java.util.Date can easily persist both, date and time, anyway.
- item's manufacturer can be different to generic product manufacturer, e.g.
a sound system is unlikely being rebranded but surely many different companies
will produce milk (which is a generic product that needs branding)
- bar codes are sometimes extremely long, even java.lang.Long was not enough to
store them and I may not go to BigInteger, but maybe one day I will ...
- code convention applied: in comparison, first value then variable
- added brand name for receipt item