Где хранятся классы java в Oracle?

где байт-код 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#