Joselu has said that completing his move to Stoke City has helped him achieve his "dream" of playing in the Premier League.
The Potters announced that they have agreed an €8m (£5.7m) fee with Hannover to sign the former Spain Under-21 international, making him their third signing of the summer.
The 25-year-old told the club's website: "I'm so happy to have joined Stoke City, it's a dream for me to join a club like this and to play in the Premier League.
"To play in the Premier League has always been an ambition of mine. It is a fantastic league with great clubs, of which Stoke City is certainly one.
"I know there were other teams in Europe who wanted to sign me but once I had spoken to the people at Stoke I knew I wanted to come here and be a part of this club."
The club has announced that Joselu, who has previously had spells with Real Madrid, Eintracht Frankfurt and Celta Vigo, will wear the number 11 shirt.