ЈАКСБ за почетнике: Водич за КСМЛ обраду с Јава
Да би апликације међусобно могле да комуницирају, често је потребно претворити податке у формат који је веома компатибилан. У ту сврху, под Јавом постоји библиотека ЈАКСБ која обрађује објекте у КСМЛ датотеке.
Генерирајте КСМЛ датотеку помоћу ЈАКСБ - Бест Працтицес
ЈАКСБ означава Јава Арцхитецтуре за КСМЛ Биндинг . Омогућује претварање Јава објеката у КСМЛ датотеке и обрнуто. Пре него што започнете, морате узети у обзир неколико ствари:
- ЈАКСБ је саставни део ЈРЕ пакета од верзије 1.6 . Поред тога, Јава развојно окружење требало би да буде ажурирано јер поправља грешке.
- Избегавајте примитивне типове података као што су флоат, децимални или негативни цели број, као и анонимни типови података . Не постоји еквивалент у ЈАКСБ за ово. У супротном, могу се претворити објекти, нумерички типови података, листе и скупови. ЈАКСБ такође не може да обрађује сложене типове података као што су јава.тиме.ЛоцалДате . За ово је потребан специјално креиран адаптер .
- У техничком жаргону, правац од Јаве до КСМЛ-а назива се марширање, док неразврставање означава супротан смер.
КСМЛ напомене
Најновији видео снимци
ЈАКСБ за почетнике: туториал на примјеру ЦД колекције
АудиоЦД.јава: Овде су дефинисани атрибути аудио ЦД-а
МусицДБ.јава: Музичка колекција се састоји од листе аудио ЦД-ова
Наш водич је о ЦД колекцији која се емитује у КСМЛ-у. Састоји се од неколико аудио ЦД-ова. Извођач, година изласка, име албума и песме се снимају за сваки аудио ЦД.
- Прво би требало креирати класу која садржи податке аудио ЦД-а. Ово укључује извођача, годину изласка, албум и песме које се налазе на ЦД-у.
- За бољу контролу излаза у КСМЛ формату потребне су КСМЛ напомене које започињу с @ под Јавом.
- Коријенски елемент у КСМЛ датотеци може се специфицирати помоћу сљедеће напомене: @ КсмлРоотЕлемент (наме = "Аудиоцд")
- Можете додати напомену изнад метода геттер или сеттер која одређује алтернативно име за Јава атрибут. На пример, уместо атрибуте године треба да се објави година објављивања: @ КсмлЕлемент (наме = "година објављивања")
- Редослед атрибута одређује напомену @ КсмлТипе (пропОрдер = {"извођач", "наслов", "година", "листа песама"}) . То значи да се име извођача прво појављује у КСМЛ датотеци, а затим име албума, година издавања и листа са песмама. Иначе редослед зависи од Јава датотеке.
- Затим креирајте нову Јава класу под називом МусицДБ која садржи листу аудио ЦД-ова. Овде се бележе и назив музичке колекције и локација музичке колекције. У принципу, поступак је сличан ономе у горе поменутој Јава датотеци.
Од Јава објеката до КСМЛ датотека
Најновији видео снимци
АудиоЦДМаин.јава: Овде се ствара неколико аудио ЦД-ова
АудиоЦДМаин.јава: Креирајте музичку колекцију
АудиоЦДМаин.јава: Претвара код у КСМЛ
Сама конверзија се одвија у тестном програму, тачније у главном методу.
- Прво направите више примерака Аудио ЦД тако да се створи више аудио ЦД-ова.
- Такође је потребна примера музичке колекције типа МусицДБ.
- Поред тога, ЈАКСБ мора знати која Јава класа садржи роот елемент. У нашем случају то је класа МусицДБ : ЈАКСБЦонтект контекст = ЈАКСБЦонтект.невИнстанце (МусицДБ.цласс);
- Конверзија се врши помоћу Марсхаллер инстанције која је повезана са горе поменутим ЈАКСБ методом: Марсхаллер м = цонтект.цреатеМарсхаллер ();
- Марсхаллер метода пружа додатне могућности, као што је КСМЛ документ је форматиран на излазу: .сетПроперти (Марсхаллер.ЈАКСБ_ФОРМАТТЕД_ОУТПУТ, Боолеан.ТРУЕ);
Читава ствар у супротном смеру
Најновији видео снимци
АудиоЦДМаин.јава: ЈАКСБ генерира Јава објекте из КСМЛ датотеке
КСМЛ датотеку је ЈАКСБ већ форматирао
У основи, конверзија у другом смеру одвија се на сличан начин:
- Прво, креира се инстанца методе унмарсхаллер : унмарсхаллер ат = цонтект.цреатеУнмарсхаллер ();
- Тада је инстанци без наручивања потребно име претходно створене КСМЛ датотеке: МусицДБ мдб2 = (МусицДБ) ум.унмарсхал (нови ФилеРеадер (МУСИЦДБ_КСМЛ));