Работая над проектом, если вы хотите выпустить команды управлению OCX, вам нужно получить объекты в Java в JS, а затем написать их в формат и выпустить их. Полем Полем Это проще, когда объект один, но он немного хлопотно, если он массив.
Сначала я подумал, что был простой способ напрямую преобразовать контент, но позже я обнаружил, что это невозможно. В Интернете говорилось, что у JS и Java нет мостовых вещей, так что:
Мое решение: на уровне действий преобразуйте массив объектов Java в строку JSON, а в JS преобразование JSON в объект массива.
1. Преобразовать массив объектов Java в строку JSON:
Должны быть использованы два класса:
net.sf.json.jsonobjectnet.sf.json.jsonarray // Разделите каждый объект транспортного средства на объект в формате JSON и используется для выпуска JSonObject json = jsonObject.FromObject (v); // v это, объект jsonarray.add (json); //System.out.println (jsonarray.tostring ()); // Использование в sendCommandList = jsonarray.toString ();
Поместите это в петлю.
2.JS превращает его в массив объектов:
// Примечание: то, что вы получаете в это время, это строка JSON. // ПРИМЕЧАНИЕ: EscapeJavascript = "false" Escape = "false", в противном случае цитаты в строке JSON будут проанализированы в "var szjsontr = '<s: свойство asscopjavascript =" false "ascain =" false "value =" sendCommandList " />';
наконец:
// преобразовать json string в массив объектов var addVehiclearray = eval (szjsonstr);
При его использовании просто используйте addVehiclearray [i] .vehicletype; Это нормально. Полем Полем Полем Полем Полем
Расширения:
Использование jsonObject и jsonarray
1. Введение в пакет JAR
Чтобы пробежать программу, должен быть введен пакет JSON-LIB, что также зависит от следующих пакетов JAR:
Commons-Lang.jar
Commons-Beanutils.jar
Commons-Collections.jar
Commons-Logging.jar
Ezmorph.jar
json-lib-2.2.2-jdk15.jar
2. JsonObject Использование объекта
Пакет JSON-LIB-это пакет, который преобразует бобы, коллекции, карты, массивы Java и XML и JSON. В этом случае мы будем использовать класс jsonObject для создания объектов jsonObject, а затем печатаем значения этих объектов. Чтобы использовать объект jsonObject, мы хотим представить пакет "net.sf.json". Чтобы добавить элементы в объект, нам нужно использовать метод put ().
2.1. Пример 1
пакет jsontest; import net.sf.json.jsonarray; import net.sf.json.jsonObject; открытый класс jsonObjectSample {// create jsonObject private static jsonObject createJsonObject () {jsonObject jsonObject = new jsonObject (); jsonobject.put («Имя пользователя», «Хуангвуйи»); jsonObject.put («секс», «мужчина»); jsonObject.put ("QQ", "413425430"); jsonobject.put ("min.score", new Integer (99)); jsonobject.put («Прозвище», «Центр мечты»); вернуть jsonObject; } public static void main (string [] args) {jsonObject jsonObject = jsonObjectSample.createJsonObject (); // ждать метода, вызовите непосредственно через имя класса + Method // out jsonObject Object System.out.println ("jsonObject:" + jsonObject); // интерпретировать тип выходного объекта Boolean ISarray = jsonObject.isArray (); логический isempty = jsonobject.isempty (); логический isnullobject = jsonobject.isnullobject (); System.out.println ("Это массив:" + isarray + ", isnullobject:" + isnullobject); // Добавить атрибуты и добавить элементы после jsonObject. jsonobject.element («адрес», «Сиамен Сити, провинция Фуцзянь»); System.out.println ("объект после добавления атрибутов:" + jsonObject); // вернуть объект jsonarray jsonarray jsonarray = new jsonarray (); jsonarray.add (0, «Это ценность jsonarray»); jsonarray.add (1, «Еще одна ценность jsonarray»); jsonobject.element ("jsonarray", jsonarray); // проживает jsonarray за jsonobject jsonarray array = jsonobject.getjsonarray ("jsonarray"); System.out.println (jsonObject); System.out.println ("вернуть объект jsonarray:" + массив); // Добавить ценность после jsonarray // {«имя пользователя»: «huangwuyi», «sex»: «мужчина», «QQ»: «413425430», «min.score»: 99, «Прозвище»: «Центр мечты», «Адрес»: «Сиамен -Сити, провинция Фуджян», «JsonArray»: [«Адрес», «Синьен -сити, провинция Фуджян», «Изон», «Истона». значение "]} system.out.println (" result = " + jsonObject); // возвращать строку в соответствии с ключом string username = jsonobject.getString ("username"); System.out.println ("username ==>" + имя пользователя); // конвертировать символы в jsonObject String temp = jsonObject.toString (); JsonObject object = jsonObject.fromObject (temp); // После преобразования возвращаемое значение на основе ключевых систем.out.println ("qq =" + object.get ("qq")); }}Результат вывода
jsonObject: {"username": "huangwuyi", "sex": "мужчина", "qq": "413425430", "min.score": 99, "никнам": «Центр мечты»} - это массив: ложь, это пусто: ложь, isnullobject: falseaddress после добавления атрибута: ложь, это пусто: ложь, isnullobject: falseaddress после добавления: атрибут: ложь: ложь. {«Имя пользователя»: «huangwuyi», «sex»: «мужчина», «qq»: «413425430», «min.score»: 99, «Ник»: «Центр мечты», «Адрес»: «Сиамен -Сити, Фуцзянь Провинция "} {" username ":" huangwuyi "," sex ":" Male "," QQ ":" 413425430 "," min.score ": 99," Lickname ":« Центр мечты »,« Адрес »:« Сиамен -Сити, провинция Фудзян »,« Jsonarray »: [« Адрес »,« Джанрэр »,« noriety value »,« Другое значение »,« Другое значение »,« Другое значение »,« Другое значение ». объект jsonarray: [«Это ценность jsonarray», «Еще одна ценность jsonarray»] result = {«имя пользователя»: «huangwuyi», «пол»: «мужчина», «QQ»: «413425430», «min.score»: 99, «Никнам»: «Центр мечты», «адрес»: Провинция "," jsonarray ": [" Это значение Jsonarray ",« Еще одно значение jsonarray »]} username ==> huangwuyiqq = 4134254302.2. Пример 2.
пакет jsontest; import net.sf.json.jsonarray; import net.sf.json.jsonObject; открытый класс jsontest {public static void main (String args []) {jsonObject jsonObj0 = new jsonObject (); JsonObject jsonObj = new jsonObject (); JsonObject jsonObj2 = new jsonObject (); JsonObject jsonObj3 = new jsonObject (); Jsonarray jsonarray = new jsonarray (); // Создать jsonObj0 jsonObj0.put ("name0", "Zhangsan"); jsonobj0.put ("sex1", "Женщина"); System.out.println ("jsonobj0:"+jsonobj0); // Создать jsonobj1 jsonobj.put ("name", "Xuwei"); jsonobj.put («секс», «мужчина»); System.out.println ("jsonobj:"+jsonobj); // Создание jsonObj2, содержит две записи, содержимое записей - JSONOBJ0, JSONOBJ1 JSONOBJ2.PUT ("item0", JsonObj0); jsonobj2.put ("item1", jsonobj); System.out.println ("jsonobj2:"+jsonobj2); // Создание jsonObj3, есть только одна запись, содержимое JSONOBJ2 JSONOBJ3.ELEMENT ("J3", JSONOBJ2); System.out.println ("jsonobj3:"+jsonobj3); // Добавить объект jsonObject в jsonarray. Обнаружил, что разница между Jsonarray и JSonObject состоит в том, что у Jsonarray больше скобок, чем jsonObject [] jsonarray.add (jsonobj); System.out.println ("jsonarray:"+jsonarray); JsonObject jsonObj4 = new jsonObject (); jsonObj4.Element («погода», jsonarray); System.out.println ("jsonobj4:"+jsonobj4); }}Результат вывода:
jsonObj0: {"name0": "Zhangsan", "sex1": "nefe"} jsonobj: {"name": "xuwei", "sex": "male"} jsonobj2: { "item0": {"name0": "Zhangsan", "sex1": "nefe"}, "item1": {"name": "xuwei", "sex": "male"}} jsonobj3: {"j3": {"item0": {"name0": "Zhangsan", "sex1": "Женщина"}, "item1": {"name": "Xuwei", "sex": "Male"}}} j Sonarray: [{"name": "xuwei", "sex": "male"}] jsonobj4: {"погода": [{"name": "Xuwei", "sex": "Male"}]}Приведенный выше метод получения и преобразования объектов массива в Java - это весь контент, которым я делюсь с вами. Я надеюсь, что вы можете дать вам ссылку, и я надеюсь, что вы сможете поддержать Wulin.com больше.