The Kansas City Royals have agreed to terms with first baseman Eric Hosmer and third baseman Mike Moustakas on contracts for the 2012 season.

Hosmer made his big league debut last May 6 and nearly won the AL Rookie of the Year award, finishing third in the balloting. He batted .293 with 19 homers and 79 runs batted in over 128 games.

The 22-year-old Miami native was selected by the Royals with the third overall pick of the 2008 draft. He was twice named Rookie of the Month during his first big league season.

Another highly-regarded prospect, Moustakas, struggled after his recall on June 10. He hit .379 in his final 36 games and finished at .263 with five homers and 30 runs batted in over 89 games.

The 23-year-old Los Angeles native was chosen by Kansas City with the second overall pick in the 2007 draft.

Also agreeing to terms on Saturday were outfielder Lorenzo Cain and pitcher Luis Mendoza.

Cain, acquired from Milwaukee in the Zack Greinke trade before the 2011 season, could be Kansas City's center fielder this season. He appeared in six games for the Royals last season and hit .273 in 22 at-bats after batting .312 for Triple-A Omaha. He also played 43 games for the Brewers in 2010 and batted .306.

Mendoza was 2-0 with a 1.23 earned run average in two September starts for the Royals last season after compiling a 12-5 mark with a 2.18 ERA for Omaha. The 28-year-old right-hander has a career record of 6-9 with a 7.36 ERA in 38 big league games over five seasons for Texas and Kansas City.