Где в Oracle хранятся Java-классы?
Где байт-код Java для загруженных классов Java хранится в базе данных Oracle? В частности, есть ли представление или таблица, которую я могу использовать для получения необработанных байтов для объектов схемы классов Java в Oracle?
2 ответа
Если вы использовали команду CREATE JAVA SOURCE для загрузки источника Java в базу данных Oracle, то вы можете перейти к представлению словаря данных USER_SOURCE и найти ваш источник Java.
Если вам нужно отобразить его или что-то еще, вы можете проверить DBMS_JAVA.EXPORT_SOURCE, который помещает исходный код в структуры PL/SQL, которыми вы можете манипулировать.
Как правило, если вы хотите просто перечислить все хранимые объекты, связанные с Java, вы можете выполнить следующее:
SELECT
object_name,
object_type,
status,
timestamp
FROM
user_objects
WHERE
(object_name NOT LIKE 'SYS_%' AND
object_name NOT LIKE 'CREATE$%' AND
object_name NOT LIKE 'JAVA$%' AND
object_name NOT LIKE 'LOADLOB%') AND
object_type LIKE 'JAVA %'
ORDER BY
object_type,
object_name;
Java-байт-код хранится в IDL_UB1$
Таблица:
select o.NAME, i.PIECE
from obj$ o, IDL_UB1$ i
where o.type# = 29
and o.obj# = i.obj#