I am one of nine children and I have four boys of my own. I use a tactic I learned from my father. I have even used it on a classroom full of seminary students and it works wonderfully. First of all, talk to them as if they are the way you want them to be, for example, "I am so glad I have you in my life, you are so sweet and wonderful." Before they know what hit them, engage them in some fun activity that really gets the blood pumping, like jumping jacks, push-ups or burpies. Anything that is really challenging. This even works for really young children. I call the activity "World Records." I have even had world record events of jumping over pillows. Anyway, the moral of the story is, get involved with them, get them active and have fun. After that, they are teachable.
The biggest thing to avoid is telling them anything derogatory, because they will become more of what ever you call them and you don't want that. Also, a lot of the time all they want is your undivided attention, so give it to them in a good way. Later on, you can use the same momentum they exhibited while doing "world records" to get them to do chores. As far as chores go, give them a choice of different chores to do. Let them pick. It changes their mind set and now they feel in control of something and you will have a lot more success. Remember, agency is what we all fight tooth and nail for so whenever possible in life, give them choices.
As far as tantrums go, I try my best to ignore them if it is at all possible. The best thing to do is deal with tantrums at home, so hopefully they get the worst of it out when you are not in public, but that is not always the case. I can tell a lot of stories of very public tantrums with my kids over the years, but the most important thing to remember is, they do turn into really awesome adults if you handle it right.
If a child is throwing a tantrum at home, a timeout in a room where they are not the center of attention works wonders. Not a room full of stimulation either. I found the laundry room to be a great cooling off place. I would tell the child they need to remain in there until either they calm down, or a timer goes off, or both. Then, no matter what, do not give in to their demands. Consistency is the most important part of this. Do not give in no matter what. This is one you have to win or else the tantrums will escalate. Believe me, you do not want to raise a child into a teenager that doesn't know how to control themselves. Teach them while they are young and when they are old they will not depart from it.
Even in the mists of a tantrum give them choices if possible. Never back a child into a corner or they will resent it. They might be obedient for now, but in the long run, they will hold in a grudge and it will backfire later in life. An example of a choice is, If you quit crying and screaming and yelling in 5 minutes, then you can come out, if you don't, then you will get another 5 minutes. The amount of time needs to be age appropriate. I usually did a minute for each year they were. To a two year old, 5 minutes is an eternity.
Also, realize that some tantrums, and whining, and laziness is just normal growing up. Do not seek for perfection because that will only frustrate you all. Everyone has good and bad days. Let your children be children and don't sweat the small stuff. Anything that you can possibly let them decide for themselves, let them. Pick your battles. Only fight and win on the battles that really really matter.
And finally, find joy in the journey. Children are the most priceless thing in the world and they need your love and attention more than anything else.