Úkoly č. 1

Uvažujme následující typ XML souboru:

<?xml version="1.0" ?>
<grades>
	<name>Tomáš Pech</name>
	<program>computer science</programn>
	<courses>
		<course name="Algorithms" credits="5" date="1.1.2017">A</course>
		<course name="Bioinformatics" credits="4" date="5.1.2017">B-</course>
		<course name="Compilers" date="10.2.2017" credits="2">C+</course>
		<course name="Databases" date="2.1.2017" credits="4">D</course>
	</courses>
</grades>
Navrhněte třídu GradeReport, 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 GradeReportReaderWriter {
	/**
	 * Nacte ze streamu XML soubor a dle nej vytvori prislusny objekt tridy GradeReport
	 */
	public GradeReport loadGradeReport(InputStream input) throws Exception;

	/**
	 * Ulozi do prislusneho streamu XML soubor predstavujici dane hodnoceni studenta
	 */
	public void storeGradeReport(OutputStream output, GradeReport gradeReport) throws Exception;
}

Implementujte příslušné rozhraní jako třídy:
  • DOMGradeReportReaderWriter -- aby využívalo DOM API
  • SAXGradeReportReaderWriter -- aby využívalo SAX API (pokus o zápis v tomto případě skončí vždy vyjímkou)
  • StAXGradeReportReaderWriter -- aby využívalo StAX API

Vyřešené úkoly zašlete do 22.2.2017 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.


Last update on 16. 2. 2017 09:48
Powered by Schemik.

© Petr Krajča, 2010, 2012
petr.krajca (at) upol.cz