To be able to use the application like the other DHIS2 applications you will have to use those technologies, and it is advised to learn those before starting to build a DHIS2 application.
However, if you would want to use a different language, such as Java, then this is totally possible, but we just don’t provide the tools to do so.
To learn about the tools we offer, go to the Developer Portal, you will be able to find all you need: https://developers.dhis2.org
We also have a category on the CoP you can ask technical questions on Development - Développement
I would like to add that you might be interested in checking out the Interoperability / integration options. (See Integration Docs on DHIS2 Developer Portal)