Han var søn af daværende major i Akershusiske Dragonregiment Christian Hagemann, blev 1798 kadet, 1802 fændrik, 1803 sekondløjtnant ved Landkadetkompagniet og afgik herfra 1805 til tjeneste ved Danske Livregiment. 1808, i hvilket år han forfremmedes til premierløjtnant, indtrådte han som adjoint i Generalstaben og gjorde nu uafbrudt tjeneste her i fyrre år. 1812 blev han kaptajn og divisionsadjudant og stillet i ekstraordinært nummer som divisionskvartermester, 1825 major, 1829 oberstløjtnant, 1833 divisionskvartermester, 1834 overadjudant, 1839 generaladjudant-løjtnant og i slutningen af samme år, da prins Frederik Ferdinand blev kommanderende general på Sjælland, chef for dennes stab, 1840 oberst. Ved krigens udbrud 1848 stilledes han à la suite i Hæren med generalmajors rang, idet det tillige blev overdraget ham indtil videre at fungere som kommandant i København. 1855 afskedigedes han af krigstjenesten som generalløjtnant.