BALTIMORE, Md. -- Tyler Fiorito called it "fun," and why wouldn't he? After all, his Princeton team had just done something that hadn't been done to Johns Hopkins in 45 years.

Fiorito made nine saves, freshman Tom Schreiber had four goals and an assist and the Princeton defense held the Blue Jays without a goal for a 31:38 stretch between the second and fourth quarters to roll past previously unbeaten Hopkins 8-3 in front of 3,936 at Homewood Field in Baltimore.

The three goals Princeton held Hopkins to were the lowest total for the Blue Jays -- at Homewood or anywhere -- since a 1966 loss to Army.

"We're proud to come to Homewood Field and only allow three goals," said Princeton coach Chris Bates.

The win came one week after Princeton opened the season with an 11-9 loss to Hofstra, and it was clear in that time that the Tigers worked out a few issues.

"We ironed out a few things," Bates said. "I thought we really competed well."

Princeton scored three times in the first 5:21 on goals from Tyler Moni, Forest Sonnenfeldt and Schreiber to build a 3-0 lead that was eerily similar to its 4-1 lead against Hofstra last week. In that game, Princeton gave away the early momentum in a game that would be tied 5-5 before long.

This time around, there would be none of that. Even when Princeton's offense went 21 minutes between its third goal and fourth, the defense made sure that Johns Hopkins never got going. Hopkins scored 44 goals in its first three games - all wins - but it was a far different story against Princeton.

Chad Wiedmaier held Zach Palmer, JHU's leading scorer coming in, without a point - and for that matter, without a shot. Long Ellis tied up Chirs Boland the entire day, allowing Boland only a single goal long after the outcome had been decided.

"Our close defense is really good," said shortstick defensive middie Peter Smyth. "They make everything so easy. It was no surprise they were trying to dodge on us. We just had to keep getting them going down the sides, and those guys took care of everything else."

Princeton's 3-0 lead stood up until Kyle Wharton scored on a play that began when Princeton sophomore defenseman Rob Castelo went down near midfield with a knee injury. With Castelo down right in front of the Hopkins bench, play continued until Wharton scored, which was followed immediately by JHU head coach Dave Pietramala's and the Blue Jays' athetic training staff's jumping onto the field to tend to Castelo.

By the time Hopkins scored again, Princeotn had put five more goals up and had shut out the Blue Jays for more than half the game. Princeton broke the game open with three more in the final 3:41 of the first half, with goals by Schreiber, Mike Grossman and then Schreiber again with 14 seconds to go before intermission.

Schreiber set up Jeff Froccaro for the only goal of the third quarter, and the freshman added his fourth of the day and sixth in two games (one off Froccaro's mark for most by a Princeton freshman in his first two games) a minute into the fourth to make it 8-1.

Boland finally got Hopkins back on the board, and Wharton scored the last of the day after a failed clear left Fiorito out of the net.

Chris McBride, who missed the Hofstra game due to an injury, and Luke Armour had two assists each for Princeton. Jack McBride, Princeton's All-America attackman, did not play against JHU due to his own injury, reaggravated against Hofstra in the fourth quarter last week.

John Cunningham had two caused turnovers for Princeton. Mike Flanagan came on to play defense when Castelo went out.

The Tigers outshot Hopkins 32-25 and had a 38-21 edge in ground balls. A week ago, Princeton had only 16 ground balls to 31 for Hofstra.

Hopkins now leads the all-time series 54-27, though Princeton is 15-9 in the last 24 games between the two.

The Tigers open their home schedule Friday night against North Carolina (7).

"We were able to fix a lot of things this week," Fiorito said. "This was a fun game. Ask anyone of our guys. This was fun."