数据
classes=[
{
"name":"class1",
"student":["joke1","joke2"]
},{
"name":"class2",
"student":["joke3","joke4"]
}]
Java读取数据
/*获取执行JavaScript的执行引擎*/
ScriptEngine engine = new ScriptEngineManager().getEngineByName("javascript");
/*为文件注入全局变量*/
Bindings bindings = engine.createBindings();
/*设置绑定参数的作用域*/
engine.setBindings(bindings, ScriptContext.ENGINE_SCOPE);
// 获得js文件
engine.eval(new FileReader("/class.js"));
Map<Object,Object> map = (Map) bindings.get("classes");
List<Class> list = new ArrayList<Class>();
for (Map.Entry entry:map.entrySet()){
Class class = new Class();
Map tempmap = (Map)entry.getValue();
Object object=tempmap.get("student");
net.sf.json.JSONArray ja = net.sf.json.JSONArray.fromObject(object);
@SuppressWarnings("rawtypes")
Iterator iterator = ja.iterator();
String str="";
while(iterator.hasNext()){
Object next = iterator.next();
JSONObject jaC = net.sf.json.JSONObject.fromObject(next);
str+="["+jaC.get("0")+","+jaC.get("1")+"]";
// System.out.println(jaC.get("0"));
// System.out.println(jaC.get("1"));
}
class.setStudent(str);
class.setName(String.valueOf(tempmap.get("name")));
list.add(class);
}
将object中的值读取出来
Object object=tempmap.get("student");
net.sf.json.JSONArray ja = net.sf.json.JSONArray.fromObject(object);
@SuppressWarnings("rawtypes")
Iterator iterator = ja.iterator();
String str="";
while(iterator.hasNext()){
Object next = iterator.next();
JSONObject jaC = net.sf.json.JSONObject.fromObject(next);
str+="["+jaC.get("0")+","+jaC.get("1")+"]";
// System.out.println(jaC.get("0"));
// System.out.println(jaC.get("1"));
}
class.setStudent(str);