Где я могу найти базу данных, к которой я пытаюсь получить доступ с помощью Hibernate? - PullRequest
0 голосов
/ 07 ноября 2019

Я просматриваю код, который мне не принадлежит, и я хотел бы вручную изменить несколько фрагментов данных в базе данных приложения. Код использует Hibernate для обработки связи с БД, но я не могу точно определить, где упоминается информация, связанная с БД (имена таблиц, точки доступа и т. Д.). Я пытался найти больше, погружаясь в дерево классов, но всегда заканчивал тем, что находил спящие классы черного ящика (что я не могу понять даже с помощью декомпиляторов).

В основном та часть, которая кажется мне ближе всегоДело в следующем:

        getElements(String businessKey, String businessKeyBis, ProcessType processType) {
    Session session = getSession();

    BusinessProcessInstance result = null;

    //Hibernate creates a criteria
    Criteria criteriaQuery = session.createCriteria(BusinessProcessInstance.class)
            .add(Restrictions.in("state", new ProcessState[]{ProcessState.RUNNING, ProcessState.NEW}))
            .add(Restrictions.eq("businessKey", businessKey))
            .add(Restrictions.eq("processType", processType))
            .addOrder(Order.desc("id"));

    if (null != businessKeyBis) {
        criteriaQuery.add(Restrictions.eq("businessKeyBis", businessKeyBis));
    }

    @SuppressWarnings("unchecked")
    //Then at this point it uses the 'list' method to question the database
    List<BusinessProcessInstance> bpiList = criteriaQuery.list();
    if (bpiList.size() > 0) {
        result = bpiList.get(0);
    }
    return result;

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

Спасибо!

1 Ответ

0 голосов
/ 08 ноября 2019

Проблема была решена благодаря тому, что Богемский указал в комментариях:

Для всех, кто оказался бы здесь после того, как столкнулся с теми же вопросами, что и я, просто отслеживайте свой код, пока не найдете некоторые классыс различными свойствами, которые говорят сами за себя и могут быть связаны с полями базы данных. При использовании Spring это еще проще, просто найдите аннотированный класс @Entity с аннотациями @Table и @Column, и это то, что вы ищете: D.

...