Three people have been taken to hospital after a double-decker bus carrying sixth form students left the road and ended up in a river in Hampshire.