Java is another programming language, which is extremely popular these days. Used not only for desktop applications, but also in the web applications in the embedded devices or on the mobile phones and tablets (Android being a notable case), Apache Thrift is used in all of those scenarios.
Apache Thrift's compiler offers lots of options for Java. Run the following command to see them:
$ thrift --help
Look for the information about Java generators:
java (Java): beans: Members will be private, and setter methods will return void. private-members: Members will be private, but setter methods will return 'this' like usual. nocamel: Do not use CamelCase field accessors with beans. fullcamel: Convert underscored_accessor_or_service_names to camelCase. android: Generated structures are Parcelable. android_legacy: Do not use java.io.IOException(throwable) (available for Android 2.3 and above). java5: ...