Han var søn af kaptajn i infanteriet Hans Jacob Hagemann og Marie født Sørensen, blev landkadet 1794, fændrik ved Prins Frederiks Regiment 1799, sekondløjtnant ved Marinekorpset 1803 og vendte som premierløjtnant 1808 tilbage til sin oprindelige afdeling (1806 Christian Frederiks Regiment, 1839 Kongens Regiment, 1842 6. Linjeinfanteribataljon), hvor han nu udelukkende havde ansættelse, fra 1812 som kaptajn, fra 1825 som major, fra 1833 som oberstløjtnant, fra 1840 som oberst og næstkommanderende, fra 1842 som chef, indtil han i 1848 kort efter krigens udbrud fik kommandoen over 2. Infanteribrigade. Denne førte han i kampene ved Nybøl 28. maj ved Dybbøl 5. juni. I slutningen af 1848 forfremmedes han til generalmajor, men fik det følgende år sin afsked på grund af svagelighed og døde 29. april 1850 i København.