This repository has been archived on 2025-02-05. You can view files and clone it, but cannot push or open issues or pull requests.
Files
JavaOOP3Sem/labs/07-books/README.md
2024-11-08 00:44:40 +03:00

47 lines
1.4 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# Консольный интерфейс для книг (`07-books`)
## Формулировка задания
Дан XML-файл следующего содержания:
```xml
<?xml version="1.0" encoding="UTF-8"?>
<books>
<book id="1">
<author>J. Smith</author>
<name>Steve Jobs</name>
<year>2024</year>
</book>
<book id="2">
<author>J. Smith</author>
<name>Steve Jobs</name>
<year>2022</year>
</book>
<book id="3">
<author>A. Turing</author>
<name>Computing Machinery and Intelligence</name>
<year>1950</year>
</book>
<book id="4">
<author>G. Orwell</author>
<name>1984</name>
<year>1949</year>
</book>
</books>
```
Необходимо спарсить его в класс, и реализовать консольный интерфейс для работы с ним. Доступные команды:
- Вывод всех книг
- Поиск книг по имени автора или году издания
- Вывод в консоль пар `автор + название` с возможностью сортировать как по автору, так и по названию
- Поиск книг по диапозону дат
Операции для поиска данных реализовать с помощью Streaming API.
## Запуск через Gradle
```sh
gradle run --console=plain --args="/tmp/books.xml"
```