PHOENIX -- Dontrelle Willis took a different approach on the mound and finished with a familiar result.
Willis, who stopped tinkering with his mechanics, allowed four runs -- including Orlando Hudson's two-run homer -- and lost his career-high seventh straight decision as the Arizona Diamondbacks beat the Florida Marlins 4-3.
"It's just how the ball bounces," Willis said. "Today, the ball could have gone any way. I'm not going to hang my head or get down. The only pitch I want back is maybe the home run, but the sequence was good."
Willis, who opened the season with three straight wins and five victories in six starts, is 0-7 in 10 starts since winning at Wrigley Field on May 29. He gave up nine hits, walked two and struck out four in 6 2/3 innings.
"I thought he pitched well. I really did," said Florida manager Freddi Gonzalez. "He got one pitch up over the strike zone to Hudson but otherwise he made some nice pitches. His confidence is good and my confidence in him is good."
Willis has allowed three runs or more in each of his last eight starts except for an abbreviated four-inning outing against Atlanta on July 1.
"To be honest I just said forget it," Willis said of his attempt to alter his mechanics to end the skid. "I just toed the rubber and had a different mind-set today: Let the chips fall where they may. And today the game was fun. Mentally, I was having fun out there."
Doug Davis (7-1) scattered five hits over 6 2/3 innings to win his second straight decision. He walked two and struck out eight. Tony Pena pitched 1/3 inning and Brandon Lyon threw the eighth before Jose Valverde pitched the ninth for his third save in as many days, and 31st overall to tie him with Milwaukee's Francisco Cordero for the major league lead.
"With the psychological edge they give us, when we have the lead in the seventh inning we feel like we're going to win," Arizona manager Bob Melvin said.
Hudson's first home run since June 15, a 421-foot shot off Willis (7-10) onto the walkway above the left-field fence, tied the game at 2 in the third.
"You can't look at the behind, elbows and knees coming at you," said Hudson, who was facing Willis for the second time. "He's unorthodox."
Mike Jacobs gave Florida a 3-2 lead in the top of sixth with a homer off Davis. But the Diamondbacks came right back in their half of the inning. Hudson tied it with an RBI single after Chris Young hit a leadoff bloop double under the glove of a diving Todd Linden in right field.
Hudson came home three batters later on Chris Snyder's two-out single, giving the Diamondbacks a 4-3 lead.
Snyder, batting in the sixth spot for the first time all season, finished 2-for-4 with a double and the RBI.
"It's a place I've hit all the way through the minor leagues and I'm comfortable batting around there," said Snyder, who has six hits in his last 11 at-bats. "It's a spot I'm used to hitting in. I feel good at the plate right now. I have confidence and I'm going to ride it as long as I can."
Davis allowed three first-inning hits and a walk as Florida opened a 2-0 lead. Davis then settled down to retire 13 of 15 batters before Jacobs' homer.
"I settled down and the big thing was getting strike one," Davis said. "I got strike one and I could be a little more aggressive."
- Willis' previous longest losing streak was six straight last year.
- Arizona LHP Randy Johnson, on the 15-day disabled list since July 3 with a herniated disk and irritated sciatic nerve, played catch in the Chase Field outfield before Monday's game and is scheduled to throw a two-inning simulated game Tuesday.
- Johnson returned to the rotation after throwing a simulated game when he was on the DL in June, throwing three largely ineffective innings against the Los Angeles Dodgers, but isn't expected to make as quick of a return the second time around.
- An MRI of Chad Tracy's sore right knee was negative and the Arizona 3B remains day-to-day.
- Florida SS Hanley Ramirez, who suffered a left shoulder subluxation in his first at-bat Sunday against Cincinnati, wasn't in the Marlins' lineup and remains day-to-day.