The accident happened just after 9 p.m. in the 2300 block of Zacks Mill Road, near the Harnett County line.
According to the State Highway Patrol, 18-year-old David Collins' Pontiac G6 went airborne and rolled over numerous times before almost hitting a house.
Authorities said Collins was not wearing a seatbelt when he went through the windshield. His 19-year-old passenger was wearing a seatbelt.
Both teens were taken to WakeMed in Raleigh with non-life threatening injuries.
Troopers said alcohol and speed were factors in the crash.
Johnston County has had a number of teen driving deaths in recent years. In late 2008, the county started a new driver education program to combat the problem.