Везде кодировка UTF-8, но в Postgresql записываются кракозябры?
LC_COLLATE = 'Russian_Russia.1251'
LC_CTYPE = 'Russian_Russia.1251'
Попробуйте писать RU_ru.utf-8
Далек от Java, но вы указываете LC_CTYPE и LC_COLLATE =  1251 вместо UTF8.