Определение манипулируемого класса путем вызова метода объекта типа org.hibernate.Session - PullRequest
0 голосов
/ 07 декабря 2018

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

public class myclass{
  public void saveOrUpdate(Item obj) throws Exception {
    try {
        startOperation();
        session.saveOrUpdate(obj);
        tx.commit();
    } catch (Exception e) {
        handleException(e);
        throw new Exception(e);
    } finally {
        close(session);
    }
  }
}

В этом примере myclass манипулирует классом Item , потому что есть вызов метода ( session.saveOrUpdate (obj) )который имеет в качестве параметра объект типа Item .Это простой пример.Моя проблема заключается в том, как определить тип времени выполнения объекта, передаваемого в качестве параметра, когда его статический тип равен Object .Вот пример:

Public class myclass {
  public void saveOrUpdate(Object obj) throws Exception {
    try {
        startOperation();
        session.saveOrUpdate(obj);
        tx.commit();
    } catch (Exception e) {
        handleException(e);
        throw new Exception(e);
    } finally {
        close(session);
    }
  }
}

Спасибо за вашу помощь.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...