To a dog, space and balance are very important. If you take a step backwards or lean out of a jumping dog’s way, it will continue to jump. To a dog, it is overtaking your space, which only pack leaders are allowed to do. When a dog jumps, step into the dog. Picture a sphere around you and are not going to allow anyone or anything to come into your space. When the dog jumps, step into it sideways with your body, shoulder towards the dog. Don't face the dog head-on (you may not have time to turn so don’t worry about it if this is the case). You are not trying to knock the dog down, although this may happen. Don’t be alarmed if you do knock the dog over. Although you don’t want to abuse the dog by knocking it around, this may actually go a long way toward breaking it of the jumping habit as it will create a negative experience. Dogs are incredibly physical creatures and can withstand a lot of physicality without any harm. The odds of inflicting any serious injury are miniscule. You are simply calmly filling up your space with your body, and in return, setting the dog off-balance, which is an uncomfortable feeling for a dog. Lean slightly forward, not backward. Never lean backward, as you will be giving the dog that space. Casually and calmly, keep filling your space, not allowing room for the dog to come in. Remember, your goal is not to knock the dog down, it's just to retain your space.
A relatively new invention that will definitely solve this problem is the no jump harness. It works by restricting the movement of the dog’s hind legs so that it can’t jump at all. This should not be a permanent solution but rather something that can be effectively used during training. It should not only stop them from jumping chain link fences, but also from jumping on people and furniture.
In order to perfect the proper greeting routine, your dog needs much more practice than that. You can speed up the training process by leaving through the back door and returning through the front door over and over again. When your friends come over, have them do the same. Each time, ask your dog to sit-stay before opening the door. At first his excitement will make it difficult for him to concentrate but after you've repeated this process 10 times, he will calm down and be able to concentrate. Before asking your dog to sit-stay in this distracting and exciting situation, be sure he has a reliable sit-stay in normal, non-stressful situations. And of course you can always just hold the dog in a sit if need be.
Also, it's your job to never let anyone else allow your puppy to jump up on them! They will say, "It's OK, she's just a puppy, I don't mind if she jumps on me". You must rush in and pull the puppy down immediately, put your pup in a sit, praise the puppy then scold the person ! Continue to hold the puppy in a sit and let the person greet the pup. Explain to them they can never allow the puppy to jump on them - the puppy must sit to be greeted. To stop the jumping up behavior in pups, I do as much people training as puppy training!
Dog Obedience Advice is a free resource offering advice on dog training and a host of common problems dog owners face, including: aggression in all its forms, from territoriality to possessiveness, and from dominance aggression to aggression caused by fear; the most common and frustrating obedience issues, such as problem digging, chewing, and barking; and comprehensive information on house training methods with sound advice on tackling all of the most common housebreaking problems.
I remember going to a dog park where a little 4-month-old Boxer puppy ran around jumping on everyone. The dog was not heavy enough to knock most of the adults down. However, it left everyone with muddy pants and the dog was big enough to knock over small children. The owner did nothing to stop the jumping puppy. After all, it was just a small pup. Everyone around her was pretty annoyed at the muddy prints the dog was leaving all over their clothes. That is an owner who will have a problem with her dog jumping on people when it gets older.