Úkoly č. 1
Uvažujme následující typ XML souboru:
<?xml version="1.0" ?> <receipt total="1642"> <name>ACME corp.</name> <itin>CZ12345678</itin> <items> <item amount="50" unitPrice="24">Nitroglycerin</item> <item amount="4" unitPrice="100">Jet Propelled Pogo Stick</item> <item amount="1" unitPrice="42">Hen Grenade</item> </items> </receipt>Navrhněte třídu
Receipt
, do které bude možné uložit všechna data z daného XML souboru, přečíst hodnoty a vypsat je.
Uvažujme rozhraní:
public interface ReceiptReaderWriter { /** * Nacte ze streamu XML soubor a dle nej vytvori prislusny objekt reprezentujici uctenku */ public Receipt loadReceipt(InputStream input) throws Exception; /** * Ulozi do prislusneho streamu XML soubor predstavujici danou uctenku */ public void storeReceipt(OutputStream output, Receipt receipt) throws Exception; }Implementujte příslušné rozhraní jako třídy:
DOMReceiptReaderWriter
-- aby využívalo DOM APISAXReceiptReaderWriter
-- aby využívalo SAX API (pokus o zápis v tomto případě skončí vždy výjimkou)StAXReceiptReaderWriter
-- aby využívalo StAX API
Vyřešené úkoly zašlete do 21.2.2018 13:00 CET na email petr.krajca (zavináč) upol.cz s předmětem: ZP4JV01. Zasílejte pouze zdrojové kódy. Pokud chcete zdrojové kódy poslat zkomprimované, použijte buď formát zip nebo kombinaci tar+gz.