SIGTERM is usually understood to be a friendly request for a program to exit, which is why it is allowed to be caught and ignored. Catching SIGTERM and nicely exiting will allow the Zomboid server to be managed correctly by SystemD (init system), which sends SIGTERMS to manage daemons and processes, as many linux server owners might want to manage their server as a daemon (how many servers are managed, like http, ssh, sftp etc...), and prevent data loss for example if a sysadmin reboots their system without properly saving their Zomboid server, as systemd will send SIGTERM to processes to ask them to close for a reboot (a stop job), if for some reason the server can't exit correctly systemD will eventually send SIGKILL (unfriendly).
Perhaps this is already the functionality though and I am doing something wrong? Does system.exit() properly save the world file? I believe this issue caused me a world rollback as I manage my Zomboid server as a daemon, which the wiki recommends.