Hibernate will not receive notification of changes made at the table level. A (bad) solution would be to update the data via the Hibernate API and use one of the callbacks provided by Interceptor to make some black magic voodoo with Singleton. But honestly, the right way to handle this would be to get rid of this singleton and put the data in the second level cache (and invalidate the cache if you update the table manually).
(EDIT: As mentioned in ChssPly76's comment, there is an interim solution if deleting a singleton is not an option, which is to modify a singleton to search and return to cached hibernated entities, such as your countries.)
source
share