2016-12-16 4 views
0

Я создаю объект для таблицы с целым полем. В базе данных поле должно содержать 4 цифры.Поле обработки Integer с определенным количеством цифр в объекте

CREATE TABLE REG_DETAIL (
    REG_ID INTEGER (4) DEFAULT J NOT NULL, 
    ACTV_CD CHAR (1) DEFAULT 'N' NOT NULL, 
    STATUSCD CHAR (5) DEFAULT 'N' NOT NULL, 
    DATE_CMPLETED DATE (4) DEFAULT Y, 
) 

Я генерирую сущности, используя Data Explorer в Eclipse.

Создание через Data Explorer не добавляет ограничений на целое число.

То, что я хотел бы знать, если в JPA 2.0/Hibernate

  1. мы можем иметь диапазон добавляемые на целое значение принятого в целочисленном поле.

  2. или если количество цифр, разрешенных для целочисленного поля, можно контролировать.

В качестве альтернативы, если он отличается в JPA 2.1

--- UPDATE ---

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

+1

Трудно понять, что вы хотите без кода. Вы думаете о аннотации проверки, сестра/дополняющая JPA? https://docs.jboss.org/hibernate/validator/4.1/reference/en-US/html/validator-usingvalidator.html#validator-usingvalidator –

+0

u сделал это просто отлично, без явного ответа на вопрос. Я искал аннотацию диапазона. я постараюсь сделать вопрос более ясным. – Acewin

+0

Общий запрос для многих JPA-askers: pls дают проблемный код Java, а не только фрагменты SQL. –

ответ

1

Когда йо использовать @Column аннотации, вы можете передать атрибут длиной к нему, чтобы указать длину поля в базе данных.

@Column(name = "column_name", length = 10)

Например, это создало бы в INTEGER(10).

Кроме того, вы можете использовать проверку Bean для указания значений max и min с помощью @Max и @Min аннотаций.

Вы можете увидеть все возможные варианты here.

+0

благодарит за информацию. Я тоже понял, что после того, как я указал на документацию, – Acewin

+0

лучше развивается в чистом JPA, но использование расширений провайдера (Hibernate, Eslipselink и т. Д.), Конечно, возможно, может принести пользу, но сделать переносимость –