W:Hello. May I speak to Mr. Johnson?

M: Speaking.
1. Who's calling, please?
--------------------------
2. Who's talking, please?
3. Who's speaking, please?

(Can we use #2 and #3 instead of #1 in telephone conversation?)

In America, #1 is the preferred, most common. The others are okay, but not used here. Perhaps in other places, they are more commonly used.

I've heard people use 1 and 3, but I've never heard anyone use 2.

As Reed wrote, 1 is the most commonly used in the US.

In a telephone conversation, "Who's calling, please?" is the most common and polite way to ask for the caller's identity. However, it is also acceptable to use variations such as "Who's talking, please?" or "Who's speaking, please?" to inquire about the caller. Both #2 and #3 are suitable substitutes for #1 when asking for the caller's name.