The 18-year-old joined the Trinity academy 18 months ago and made his top-flight debut last season in a 38-10 home defeat by Warrington Wolves.
Batchelor has played for England at academy level, appearing against France and Australia in 2016.
"Very happy to re-sign at the club, time to keep working hard and see where we can go," Batchelor tweeted.
Chairman Michael Carter told the club website: "It's exceptional news for this club that one of our young players has decided to commit his future to the club.
"He doesn't look out of place in Super League and I think he can be a top, top player."
Back-rower James Batchelor has signed a five-year contract with Super League side Wakefield Trinity.