Obtenir du contenu de classe java à partir de la base de données oracle
Est-il possible d'obtenir le fichier java .class
à partir d'une base de données?
Je veux dire les classes java, qui ont été chargées via l'outil loadjava
avec les paramètres -r -s -v -g
.
Comment faire cela?
Modifier: J'en ai besoin sous forme lisible;)
3
2 answers
Jetez un oeil à la DBMS_JAVA
package.
Avec DBMS_JAVA
vous pouvez exporter les .java
et .class
fichiers, en utilisant:
-
export_source
- pour exporter.java
fichierPROCEDURE export_source(name VARCHAR2, schema VARCHAR2, blob BLOB) PROCEDURE export_source(name VARCHAR2, blob BLOB) PROCEDURE export_source(name VARCHAR2, clob CLOB)
-
export_class
- pour exporter.class
fichierPROCEDURE export_class(name VARCHAR2, schema VARCHAR2, blob BLOB) PROCEDURE export_class(name VARCHAR2, blob BLOB)
Ici, vous pouvez trouver quelques exemples sur la façon de l'utiliser pour lire la source de .java
fichiers.
3
Author: npe, 2015-04-30 17:27:03
J'ai eu le même problème, mais après quelques recherches sur google je le résoudre. Probablement aidera quelqu'un. Juste un exemple
DECLARE
b CLOB;
c varchar2(2000);
i integer:= 255;
begin
DBMS_LOB.createtemporary(b, false);
DBMS_JAVA.export_resource('<object_name>', '<schema_name>', b);
DBMS_OUTPUT.PUT_LINE('java_resource:');
DBMS_LOB.read(b, i, 1, c);
DBMS_OUTPUT.PUT_LINE(c);
end;
0
Author: adimoise91, 2018-04-18 12:36:51