【问题标题】:Where are java classes stored in Oracle?Oracle 中的 java 类存储在哪里?
【发布时间】:2012-02-25 02:25:13
【问题描述】:

在 oracle 数据库中存储的已加载 java 类的 java 字节码在哪里?具体来说,我可以使用视图或表来获取 Oracle 中 Java 类模式对象的原始字节吗?

【问题讨论】:

    标签: java oracle oracleinternals


    【解决方案1】:

    如果您使用 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;
    

    【讨论】:

      【解决方案2】:

      IDL_UB1$ 表中存储的 Java 字节码:

      select o.NAME, i.PIECE 
      from obj$ o, IDL_UB1$ i 
      where o.type# = 29 
          and o.obj# = i.obj#
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2011-12-18
        • 1970-01-01
        • 2011-08-15
        • 2015-11-17
        • 2010-11-17
        • 1970-01-01
        相关资源
        最近更新 更多