GithubHelp home page GithubHelp logo

georgiivoyakin / java-software-platforms-templates Goto Github PK

View Code? Open in Web Editor NEW
2.0 1.0 4.0 101 KB

Java programming tasks for institute

Java 99.68% Dockerfile 0.32%
java java-8 study java-15 docker gradle spring-boot

java-software-platforms-templates's Introduction

java-software-platforms-templates

Java programming tasks for institute

Task 1

Имплементировать интерфейс Comparator, сравнивающий две строки по сумме всех чисел, представленных в строке.

Task 2

Сортировка по возрасту в обратном порядке, фильтрация по имени «начинается с А», сортировка по дате рождения, расчет среднего веса.

Task 3

Создать свои потокобезопасные имплементацииинтерфейсов. Set с использованием Semaphore, List сиспользованием ключевого слова synchronized.

Task 4

Реализовать собственную имплементацию ExecutorService с единственным параметром конструктора – количеством потоков.

Task 5

Реализовать паттерн Singleton как минимум 3-мя способами.

Task 6

Написать реализацию паттернов «Фабричный метод», «Абстрактная фабрика», «Строитель», «Прототип».

Task 7

Написать реализацию паттернов «Фасад», «Легковес».

Task 8

Написать реализацию паттернов «Снимок», «Наблюдатель».

Task 9

Создать приложение, которое выводит какое-то сообщение в консоль. Создать Gradle Task, который создает jar-файл приложения, переносит его в отдельную папку, в которой хранится Dockerfile для jar, а затем создает Docker контейнер из данного jar-файла и запускает его.

Task 10

Создать приложение, в котором создается ApplicationContext и из него берётся бин с названием, переданным в качестве аргумента к приложению, и вызывается метод интерфейса, который он имплементирует. Нужно создать по одному бину для каждого класса, определить им название. Проверить, что вызывается при вводе названия каждого из бинов. Интерфейс Musician с методом doMusic(), его имплементации: Drummer, Guitarist, Trombonist.

Task 11

Создать приложение с использованием Spring Boot Starter Initializr с такими зависимостями:

  • Spring Web
  • Lombok
  • Validation
  • Spring boot Actuator

Запустить приложение и удостовериться, что не появилось никаких ошибок. Добавить все эндпоинты в Actuator, сделать HTTP-запрос на проверку состояния приложения. Собрать jar-файл приложения, запустить и проверить состояние при помощи REST-запроса.

Task 12

Создать приложение, которое при запуске берет данные из одного файла, хеширует, а при остановке приложения удаляет исходный файл, оставляя только файл с захешированными данными. Названия первого и второго файла передаются в качестве аргументов при запуске. При отсутствии первого файла создает второй файл и записывает в него строку null. Реализовать с использованием аннотаций PostConstruct, PreDestroy.

Task 13

Создать файл application.yml в папке resources, добавитьв него такие свойства:

  • student.name - имя студента
  • student.last_name - фамилия студента
  • student.group - группа студента

При запуске приложения вывести данные свойства в консоль при помощи интерфейса Environment или аннотации Value.

java-software-platforms-templates's People

Contributors

georgiivoyakin avatar

Stargazers

 avatar  avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.