Hibernate имя свойства заглавной буквы - PullRequest
0 голосов
/ 05 июля 2010

У меня проблема с тем, как hibernate / JavaBeans создает имена свойств.

Вот мое свойство.

private boolean aNumberFl;

@Column( name = "aNumberFl", nullable = false )
@Type( type = "yes_no" )
public boolean getANumberFl()
{
    return aNumberFl;
}

public void setANumberFl( boolean var )
{
    this.aNumberFl = var;
}

Все хорошо, за исключением того факта, что внутри hibernate считает, что мои имена свойств ANumberFlа не NumberFl.Соглашения JavaBean проверяют первые два символа получателя свойства (после получения) и, если они оба являются столицами, и не передают в катапульту имя свойства.Однако это не соответствует имени моего поля, которое имеет нижний регистр.Это все допустимо в мире JavaBean, но наличие поля с именем aNumberFl ИЛИ ANumberFl приведет к тому же имени получателя.Это означает, что когда метод get является источником, он должен выбрать один из другого и выбрать последний.

Я пытался переместить аннотации на поле, но это вызвало другие проблемы, в которые я не буду вдаватьсясейчас, и я не уверен, что это хорошая идея в любом случае.

Есть ли в любом случае переопределение имени свойства по умолчанию, которое выводится из спящего режима из имени метода получения?

Спасибо.

1 Ответ

1 голос
/ 05 июля 2010

Я советую переименовать собственность и дать ей более осмысленное имя

  • удалите a - если это "A-Number", и у вас есть "B-Number", сделайте свойство в верхнем регистре - некрасивым, но может работать.
  • Fl ничего не значит - расширьте это сокращение, и все будет хорошо.
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...