Модераторы: LSD, AntonSaburov
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> The entity has no, primary key attribute defined 
V
    Опции темы
Bulat
Дата 31.5.2016, 17:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


татарский Нео
***


Профиль
Группа: Завсегдатай
Сообщений: 1701
Регистрация: 22.3.2006
Где: Альметьевск

Репутация: 4
Всего: 57



Есть java-класс - entity

Код

...
import ...
...
/**
 * The persistent class for the v_graph_value database table.
 * 
 */
@Entity
@Table(name="v_graph_value")
@NamedQueries({
    @NamedQuery(name="VGraphValue.findAll", query="SELECT v FROM VGraphValue v"),
    @NamedQuery(name="VGraphValue.findByFilters", 
        query="SELECT v.value FROM VGraphValue v WHERE v.ent_id = :ent_id "
                + "AND v.property_id = :property_id "
                + "AND ( EXTRACT ( epoch FROM v.dc AT TIME ZONE 'utc' ) * 1000 ) :: bigint >= :start_dc "
                + "AND ( EXTRACT ( epoch FROM v.dc AT TIME ZONE 'utc' ) * 1000 ) :: bigint < :end_dc")
})
public class VGraphValue implements Serializable {
    private static final long serialVersionUID = 1L;

    private Timestamp dc;

    @Column(name="ent_id")
    private BigDecimal entId;

    @Column(name="property_id")
    private String propertyId;

    private String value;

    public VGraphValue() {
    }

    public Timestamp getDc() {
        return this.dc;
    }

    public void setDc(Timestamp dc) {
        this.dc = dc;
    }

    public BigDecimal getEntId() {
        return this.entId;
    }

    public void setEntId(BigDecimal entId) {
        this.entId = entId;
    }

    public String getPropertyId() {
        return this.propertyId;
    }

    public void setPropertyId(String propertyId) {
        this.propertyId = propertyId;
    }

    public String getValue() {
        return this.value;
    }

    public void setValue(String value) {
        this.value = value;
    }

}


Согласно спецификации JPA2.0, если я не ошибаюсь, нужен уникальный ключ этому entity. Немного порывшись в интернете нашел как вставить автоинкрементный "фэйковый" ключ:

Код

@Entity
@Table(name="v_graph_value")
@NamedQueries({
    @NamedQuery(name="VGraphValue.findAll", query="SELECT v FROM VGraphValue v"),
    @NamedQuery(name="VGraphValue.findByFilters", 
        query="SELECT v.value FROM VGraphValue v WHERE v.ent_id = :ent_id "
                + "AND v.property_id = :property_id "
                + "AND ( EXTRACT ( epoch FROM v.dc AT TIME ZONE 'utc' ) * 1000 ) :: bigint >= :start_dc "
                + "AND ( EXTRACT ( epoch FROM v.dc AT TIME ZONE 'utc' ) * 1000 ) :: bigint < :end_dc")
})
public class VGraphValue implements Serializable {
    private static final long serialVersionUID = 1L;

    @Id @GeneratedValue long id;

    private Timestamp dc;

    @Column(name="ent_id")
    private BigDecimal entId;

    @Column(name="property_id")
    private String propertyId;

    private String value;

    public VGraphValue() {
    }

    public Long getId() {
        return this.id;
    }

    public void setId(long id) {
        this.id = id;
    }

    public Timestamp getDc() {
        return this.dc;
    }

    public void setDc(Timestamp dc) {
        this.dc = dc;
    }

    public BigDecimal getEntId() {
        return this.entId;
    }

    public void setEntId(BigDecimal entId) {
        this.entId = entId;
    }

    public String getPropertyId() {
        return this.propertyId;
    }

    public void setPropertyId(String propertyId) {
        this.propertyId = propertyId;
    }

    public String getValue() {
        return this.value;
    }

    public void setValue(String value) {
        this.value = value;
    }

}


С этой спецификацией я опять же не работал, и опять времени нормально изучить вопрос нет.. Пока сам ковыряюсь, но может кто подскажет, как правильно сделать.


--------------------
менеджер по кодеврайтингу  smile 
PM MAIL WWW   Вверх
zera
Дата 1.6.2016, 11:12 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 205
Регистрация: 19.1.2006
Где: saint-petersburg

Репутация: нет
Всего: 9



@Id @GeneratedValue long id;
это автоинкрементный "фэйковый" ключ?
PM MAIL   Вверх
Bulat
Дата 1.6.2016, 13:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


татарский Нео
***


Профиль
Группа: Завсегдатай
Сообщений: 1701
Регистрация: 22.3.2006
Где: Альметьевск

Репутация: 4
Всего: 57



Цитата(zera @  1.6.2016,  11:12 Найти цитируемый пост)
@Id @GeneratedValue long id;
это автоинкрементный "фэйковый" ключ? 


Цитата(Bulat @  31.5.2016,  17:03 Найти цитируемый пост)
С этой спецификацией я опять же не работал, и опять времени нормально изучить вопрос нет..


P.S. Вопрос закрыт! 


--------------------
менеджер по кодеврайтингу  smile 
PM MAIL WWW   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Java"
LSD   AntonSaburov
powerOn   tux
javastic
  • Прежде, чем задать вопрос, прочтите это!
  • Книги по Java собираются здесь.
  • Документация и ресурсы по Java находятся здесь.
  • Используйте теги [code=java][/code] для подсветки кода. Используйтe чекбокс "транслит", если у Вас нет русских шрифтов.
  • Помечайте свой вопрос как решённый, если на него получен ответ. Ссылка "Пометить как решённый" находится над первым постом.
  • Действия модераторов можно обсудить здесь.
  • FAQ раздела лежит здесь.

Если Вам помогли, и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, LSD, AntonSaburov, powerOn, tux, javastic.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Java: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0418 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.