Откройте JPA - определение столбца двоичный
Вопрос
Я пытаюсь установить тип столбца в OpenJPA в качестве двоичного (5), поэтому я использую следующую декларацию:
@Column(name="MY_FIELD", columnDefinition="BINARY(5)")
public byte[] getMyField() {
return myField;
}
Тем не менее, столбец всегда создается как BLOB:
| MY_FIELD | blob | YES | | NULL | |
Любые подсказки на получение этого на работу?
Решение
Это ошибка в OpenJPA, представленная OpenJPA-740.. Отказ Я открыл отчет об ошибках от вашего имени: OpenJPA-1870..
Другие советы
То Hibernate Doc. говорит, что аннотация @lob должна использоваться:
@LOB указывает, что свойство должно быть сохранено в BLOB или CLOB в зависимости от типа свойства: Java.sql.Clob, символ [], char [] и java.lang.string будут сохраняться в Clob. java.sql.blob, байт [], байт [] и сериализативный тип будет сохраняться в Blob.
Он хорошо работает с Hibernate: это должно быть в порядке для вас с OpenJPA, поскольку документация Говорят, что @lob обрабатывается «в стандартной JPA-манере».