Han ble offiser i 1855, kaptein i 1870. Fra 1860 var han ordonannsoffiser og adjutant i Stockholm for kong Karl XV (1836–1872), inntil kongens død i 1872. Fra 1874 var Johan sjef for den norske garden i Stockholm. I 1882 forfremmes han major idet han ble sjef for det norske jegerkorpset i Kristiania. I 1894 ble han generalmajor og sjef for den kristiansandske infanteribrigaden. I 1885 ble han oberstløytnant, i 1889 oberst og i 1894 generalmajor da han ble sjef for den Kristiansandske brigade. Året etter ble han sjef for den 2. akershusiske infanteribrigaden og kommandant på Akershus festning. I 1901 ble han utnevnt til generalløytnant. Han tok avskjed i 1904.