2017-05-02 18 views
0

HibernateとPostgreSQL(9.5)を使用して既存のデータベースエントリを更新しようとしています。空白が文字列から削除されます。私のコードで私は成功し、上記の例では例えば他のフィールド、updatedAt時間フィールドを更新エルスたとえば...Hibernate EntityManagerは空白の変更を更新しません

... 
EntityManager entityManager = EntityManagerHelper.getEntityManager(); 
entityManager.getTransaction().begin(); 
... 
GeoLocationLocale geoLocationLocale = existingLocales.get(id); 
geoLocationLocale.setLocale(geoLocationLocale.getLocale().trim()); 

long now = Calendar.getInstance().getTimeInMillis(); 
geoLocationLocale.setUpdatedAt(new Date(now)); 
entityManager.merge(geoLocationLocale); 
... 
entityManager.flush(); 
entityManager.getTransaction().commit(); 
entityManager.close(); 

。しかし、私はロケールフィールドから末尾の空白を削除することはできません。私は、これは、ロケール値を変更します

...私はこのようなものを使用して、たとえば、完全に他の何かにロケールフィールドを変更したい場合
geoLocationLocale.setLocale(new BigInteger(16, new Random()).toString(10)); 

、でした。私は空白を削除できません。何か案は?

答えて

1

より多くの情報(エンティティとスキーマのデータ定義から)が必要です。 スキーマでvarcharの代わりにcharを使用するかどうかを確認します。 charを使用する場合、同じ長さに空白が追加されます。

+0

よかった!それでおしまい。ロケールフィールドは、varcharではなくcharacter(8)です。ありがとう!受け入れます – SiLaf

関連する問題