I am a bit confused between using a constants file and properties file in Java.
How to decide when to use Constants.java and when to use a .properties>
Generally, anything in a constants class is considered to be "hardcoded"; that is, you are required to re-compile to make changes.
Use a .properties file for things like configuration, where you don't have to be forced to re-compile just to make changes. In this way, you can simply change the properties file and restart your application.