Добрый день, если рассматривать серверную часть на Java, то можно копать в сторону технологии EJB (часть Java EE). По сути, это Java классы на сервере, которые обрабатывают запросы от клиентов и ими реализуется вся бизнес логика (средний уровень, сервер приложений). В качестве сервера, например, может быть JBoss, точнее ныне WildFly (
https://ru.wikipedia.org/wiki/WildFly ). По моему опыту, - все неплохо работает, в том числе с Андроидными клиентами (
www.volocktech.ru/index.php/2016/11/16/javaee-meet... ). WildFly может выставить наружу, как чистые Java бины, так и Web сервисы с WSDL и REST сервисы. У нас все эти варианты используются. Причем Андроид подключается к серверу через REST. Главные бины с бизнес логикой у нас @Stateless, для работы с БД используем Hibernate (встроен в WildFly) и PostgreSQL. Операции с БД выполняются с помощью простых Java объектов с аннтоацией @Entity.
Для обмена с клиентами используются POJO (простые Java классы, но не те, что @Entity!)
Использование этой технологии это не очень простой путь, но для создания серьезных приложений хороший вариант.
Если хочется как следует изучить технологию, лучше книгу иметь типа такой:
https://www.litres.ru/debu-panda-2/ejb-3-v-deystvi...
Есть еще более простые варианты по технологии Servlet, но про них ничего не скажу, т.к. не использовал.