How to prove the equivalence of the two definitions of “equivalence of categories”?

As far as I know, there are two definitions of "equivalence of categories".
The first definition of the equivalence of categories $A$ and $B$ is required that there exist functors $F\colon A \to B$ and $F'\colon B \to A$ such that $F'F$ and $FF'$ are natural isomorphic to the identity functors of $A$ and $B$, respectively.
The second asserts that there exist a functor $F\colon A \to B$ that is fully faithful (i.e. $F$ gives bijection between morphism sets) and essentially surjective (i.e. every object of $B$ is isomorphic to an object of the form $F(X)$ for some object $X$ in $A$).
I want to know how to prove the two above are equivalent.

-
Clearly the target category is equivalent to the full subcategory which is the image of $F$ (since $F$ is fully faithful the image will be a category). So, it suffices to prove that equivalence is equivalent to fully faithful and surjective on objects. But, just define the inverse morphism object wise using the inverse of the induced map on hom sets. – Alex Youcis Sep 19 '13 at 8:25
Thank you very much! But still I am puzzled about how to define the "inverse" functor F', since there may need too many times of choice. – Lao-tzu Sep 19 '13 at 8:40
I'm not sure what you mean. Just make a choice. If $F$ is fully faithful and $F(x)=F(y)$ then $x\cong y$. – Alex Youcis Sep 19 '13 at 8:50
OK, I will work out the details and think it thoroughly. Thanks! – Lao-tzu Sep 19 '13 at 8:53
Notice that you need the axiom of choice in order to prove this assertion. I don't remember if it is actually equivalent to the axiom of choice...! – Francesco Genovese Sep 19 '13 at 10:17