A good leader is one who can command respect and trust from the people who work for him. He does not look at them as subordinates, but as team members. He does not order them to do things for him; rather, he requests them to assist him.
To be a good leader, you must accept that each and every member of your team is unique. You have to know their strengths and weaknesses. You have to empathize with their successes and failures. You have to be able to identify when their morale is high or low and why it is such.
You have to let them know the goals of your team. Why should they do what you are asking them to do? They should be able to feel that they are part of the team, not just workers. This way, they will do the best they can to reach the team's goal without you breathing down on their necks every so often.
You must know when to draw the line. Treating them as your equal does not mean that they can step on you and be disrespectful. Do not let things get out of hand by making them realize that you are the one in command. Your word is the final word. And when they do not recognize that, make sure that you discipline them the way a parent would discipline an erring child - with an iron hand wrapped in love.
All things said, a good leader is wise and sincere. Love what you do, love the people you work with, and all things will fall in their proper places.