# Java custom code related topics

### In this section

* [What is a drop-down list?](https://help.qlik.com/talend/en-US/components/8.0/java-custom-code/what-is-drop-down-list?id=2802)
* [Preparing a database table](https://help.qlik.com/talend/en-US/components/8.0/java-custom-code/preparing-database-table?id=2803)
* [Creating a drop-down list](https://help.qlik.com/talend/en-US/components/8.0/java-custom-code/creating-drop-down-list?id=2804)
* [Creating a dynamic drop-down list](https://help.qlik.com/talend/en-US/components/8.0/java-custom-code/creating-dynamic-drop-down-list?id=2805)
* [Why detecting the operating system at run time?](https://help.qlik.com/talend/en-US/components/8.0/java-custom-code/why-detecting-operating-system-at-run-time)
* [Detecting the operating system at run time and dynamically setting the file path](https://help.qlik.com/talend/en-US/components/8.0/java-custom-code/detecting-operating-system-at-run-time-and-dynamically-setting-file-path)
* [Differences between tJava, tJavaRow, and tJavaFlex](https://help.qlik.com/talend/en-US/components/8.0/java-custom-code/differences-between-tjava-tjavarow-and-tjavaflex)
* [How to handle the dynamic headers found in W3C Extended Log Format using tJavaFlex](https://help.qlik.com/talend/en-US/components/8.0/java-custom-code/how-to-handle-dynamic-headers-found-in-w3c-extended-log-format-using-tjavaflex)