Heim  >  Artikel  >  Java  >  Wie führe ich als String gespeicherten Java-Code aus?

Wie führe ich als String gespeicherten Java-Code aus?

Mary-Kate Olsen
Mary-Kate OlsenOriginal
2024-10-24 18:23:30130Durchsuche

How to Execute Java Code Stored as a String?

Code aus einem String ausführen

Angenommen, Sie haben einen Java-Code in einer String-Variablen gespeichert, wie zum Beispiel:

<code class="java">String javaCode = "if(polishScreenHeight >= 200 && " +
    "polishScreenHeight <= 235 && polishScreenWidth >= 220) { }";</code>

Können Sie diesen String in eine Java-Anweisung umwandeln und ausführen?

Verwendung der Compiler-API

Ein Ansatz besteht darin, die Java-Compiler-API zu nutzen. Mit dieser API können Sie Code dynamisch kompilieren und auswerten. Sie können den Java-Code in Ihrem String in eine Java-Klasse kompilieren, eine Instanz dieser Klasse erstellen und die Methode ausführen, die den Code enthält, den Sie ausführen möchten.

Alternative: Beanshell

Alternativ können Sie die Verwendung von Beanshell in Betracht ziehen, einer Java-ähnlichen Skriptsprache, die in Java-Anwendungen eingebettet werden kann. Beanshell ermöglicht die spontane Auswertung von Java-Code aus Strings. Sie können den Java-Code in Ihrem String ausführen, indem Sie einfach die „eval“-Methode von Beanshell verwenden.

Beanshell wurde zwar nicht aktiv entwickelt, hat sich aber als zuverlässiges Tool in Produktionsumgebungen erwiesen und bietet eine schnelle und bequeme Möglichkeit zur dynamischen Code aus Strings in einem Java-Kontext ausführen.

Das obige ist der detaillierte Inhalt vonWie führe ich als String gespeicherten Java-Code aus?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn