The deal was announced Friday after Johnson passed a physical.
The 33-year-old started 2015 with the Braves and was dealt to the New York Mets before the non-waiver trade deadline along with third baseman Jose Uribe. Johnson hit .265 with 14 homers and 47 RBIs in 111 games.
Johnson can earn up to $1.25 million in performance bonuses based on plate appearances: $250,000 for 300 and each additional 50 through 500.
Last season, Johnson was one of only two major leaguers to play first base, second base, third base, shortstop, left field, right field and designated hitter. He likely will back up numerous positions for the rebuilding Braves.