You are describing Macy to a "t". What did they you in class about how to handle that?
In which kind of situation?
For someone coming to our house we give him a chance to sit nicely...when (not if) he starts jumping at the person we grab him by the leash (which we already have on him) and put him outside on the other side of the sliding glass door. Wait out the tantrum. Then let him back in again. Repeat as necessary until he finally calms down and greets the person in a nice sit. He's fine after that...totally will ignore the person after the initial sniff.
For walking and greeting we're going with focus. If we're walking past a yard with a dog in it we're luring and rewarding for focus. If he loses his focus we back up and start again. (We have one road nicknamed "barking dog alley" where it seems every house has a dog on the invisible fence - great for training)
If we're waling and someone is coming - either a jogger or someone out walking - we move Remy to the median strip and get him into a sit and make him stay in a sit until the person has passed.
He's getting better at both of the outdoor tasks, but is still not up to being pet by the neighborhood kids...unless one of them has a future as a tackle dummy.