Puppies should be told from day one, "no jumping." Anything you do not wish your cute little puppy to do when it is full-grown should not be allowed when it is a puppy. Think about the behaviors you allow your puppy to do; is it something you will always allow him to do even when he is full-grown? If the answer is no, do not allow your puppy to do it from day one.
Teach your puppy a conflicting behavior such as “fetch your ball.” She can’t jump up if she’s running to bring you her ball or favorite toy. Just the name of a special game or toy—“go get your bear!”—can change the dog’s focus and redirect the behavior long enough for you to evade the jumping. With enough repetition, your puppy will begin to associate your home-coming with “go fetch” instead of jumping up.
However, when we are standing or sitting in a chair and they come bounding over to greet us, jumping up on us and trying to reach our face, we must not bend over and exchange hugs and kisses. If we do we are training and rewarding the puppy for jumping up. Eventually, most of us decide we no longer like our puppy jumping up to say hello - usually when the puppy gets bigger and more rambunctious. What used to be cute is now obnoxious and even dangerous if the puppy is jumping up on children or the elderly.
When a dog jumps on a human of its own free will, it is not "greeting" the human, it is asserting its dominance over the human; it is the dog communicating that it is alpha and/or wishes to own/control the human. A subordinate would never dream of running over and jumping on the alpha dog of the pack. Space is respect and lower members of the pack respect the higher members. If your dog jumps on humans, it does not respect them. Note: when a young puppy jumps on humans it is sometimes its attempt to reach one's face. Puppies need to be taught not to jump up on humans as this behavior will manifest into other meanings as the puppy grows up into an adult dog.