So you need a multi-lingual database? That is a
much bigger project than the usual translation of static labels and checking everything renders right to left.
You need to consider your data model carefully, but a fairly standards way of modelling this is to have a translation entity for every translatable entity in your model. For example, you might have an "address" entity that has an associated address_tr entity which contains any translatable attributes keyed on the address pk and the locale. This would not be all the attributes because of course proper nouns don't need translated. Because you effectively double the number of entities by doing this, and hence dramatically increase the number of joins, a way to mitigate against the performance overhead is to supply views for reading data.
If you know 100% you will never have to support any other languages than the two you have entered (including no regional differences) you can simplify this by just redundantly adding attributes to existing entities for translated data.
There are a bunch of programming differences to consider for Java i18n. Have a read of
this to get you going.