point Il existe un moteur JavaScript dans la bibliothèque fournie avec la JVM, alors utilisez-le.
[Une addition] ↓ Il existe une version améliorée ici. Code utilisé lorsque vous souhaitez traiter Json avec uniquement des bibliothèques standard en Java (version améliorée) gson inutile https://qiita.com/oyahiroki/items/006b3511fc4136d02ad1
package script;
import javax.script.ScriptEngine;
import javax.script.ScriptEngineManager;
import javax.script.ScriptException;
public class JsonUtil {
	public static Object get(String json, String code) {
		// Get the JavaScript engine
		ScriptEngineManager manager = new ScriptEngineManager();
		ScriptEngine engine = manager.getEngineByName("JavaScript");
		String script = "var obj = " + json + ";";
		try {
			engine.eval(script);
			{
				return engine.eval("obj." + code);
			}
		} catch (ScriptException e) {
			e.printStackTrace();
			return null;
		}
	}
	//Comment utiliser/ How to use
	public static void main(String[] args) {
		String json = "{'test':'this is test','test2':{'test3':'value3'}}";
		{
			Object value = JsonUtil.get(json, "test");
			System.out.println(value);
		}
		{
			Object value = JsonUtil.get(json, "test2.test3");
			System.out.println(value);
		}
	}
}
Résultat de sortie
this is test
value3
        Recommended Posts