The Czech led the competition from her first attempt of 66.90 metres and while her night peaked with her fourth throw of 69.55, all four legal efforts were longer than anyone else in the field could manage.
Spotakova was just the second woman to win the title at successive Games after East Germany's Ruth Fuchs, who claimed gold in 1972 and 1976, and she now wants to match her coach and compatriot Jan Zelezny's tally.
"My coach has won it three times so I still have things to do. I feel amazing. I am 31 years old, I have got so much experience and I am feeling healthy," she added.
Zelezny won the men's javelin title at the 1992, 1996 and 2000 Olympics and still holds world record of 98.48m.
Germany's Christina Obergfoell took silver with her opening attempt of 65.16m before fouling her five subsequent throws. Her compatriot Linda Stahl finished third for bronze with 64.91m.
Russia's world champion Maria Abakumova, who took Spotakova's title in Daegu last year, failed to reach the final eight after managing a best throw of just 59.34m.
"It's so difficult for me to talk, I have too many tears," she said.
"Today it was not the right day for me, I don't know why. Perhaps the success of last year had some effect on my psychological condition.
"I lost my adrenaline, I felt some emptiness. My reaction was that I thought I had to train more. Even my trainer was telling me 'that is enough'.
"I was just not throwing right. I'm so sorry. In this moment I don't know how to feel. I even thought to go away somewhere and not compete anymore."