It doesn't exist as in Eclipse, but you can format your code on commit, and the shortcut ctrl+alt+L will allow you to format easily your code.
After a time formatting the code will be a reflex and you won't even think about it.
There is something similar - possibility to do some actions, when a file is committed.
In a file commit window there is a "Before commit" section which contains checkboxes like "optimize imports", "Reformat code", etc.
I think it might break the philosophy that JetBrains have. Nothing should be done unless the user/developer requests it (and no Wizards). So you are stuck with Ctrl-Alt-L or just indent Ctrl-Alt-I. I personally only use the latter since the code usually formats itself as you type.
Also Idea saves files as soon as you leave window or (I think) wait for a certain time, this might really mess up things.
The answer I linked to explains in a few easy steps how to record a macro for optimize imports and reformat and then run that macro when you save your files (bind it to Ctrl+S).
==> now execute all actions you need (e.g. reformat, rearrange, optimize imports)
Edit --> Macros --> Stop Macro Recording
Give your new Macro a name. You can also assign a shortcut to your macro. Just enter it's name in the settings search and you will find it under Macro.
Had the same problem, but Save Actions were not flexible enough.
I went for File Watchers plugin which allows for running custom programs each time a file of a given type changes.
UPDATE:
Since IntelliJ Version 2021.2 Jetbrains added support for Actions on Save.
They can be found under Preferences/Settings | Tools | Actions on Save.