I have a couple of ideas.
1) If you think he has a lot of energy, then get him to use some of it up before school. Biking to school, running laps, plahying a tiring physical gam efor a while before school.
2) Get to school early so that he can be there and get into it before the other kids get there and create an overwhelming situation.
3) Shadow him at school for a while - days or weeks, and see what happens. Be an active coach. Look at it as a chance to give him really specific help. Telling him to 'be nice' is really vague. THe kids can't translate that into anything useful. Even saying 'keep your hands to yourself' is hard to remember right when the thing is happening. I read something that said that sometimes the brain pathways need to be rerouted by undoing habits, like yelling/hitting when the other kid does something we don't like. (My son's nursery school teacher talked to me about this.) So for example, stay at school with him, and talk him through things. You might say, "There are x and y over there playing. Does that look fun?" "How can you play with them?" Ask him questions (without bugging him) so that he's coming up with the answers.
The idea is that if you're there then you can point out other ways of reacting to situations. But don't chastise him because then he wont listen to you. It's a fine line.
4) Read a couple of books from the library - they'll have ideas and you'll feel like you're not alone!!!
5) Set up playtime with one or two kids in the class - let him pick them. He needs a friend - it's a new situation.
6) Don't expect him to act just like the other kids, or your perception of the other kids. Everyone is an individual. And he's very young. SOmetimes we expect little boys to act like middle aged women, and it's just not fair to them!!!
M.