Como colocar caractere onde estiver o cursor

Olá. Estou desenvolvendo uma aplicação onde tenho uma janela que contém vários jtextfields e um painél de botões, tipo uma calculadora. Se eu clicar no botão zero, por exemplo, teria que aparecer o “0” na caixa de texto onde está o cursor. E então, como faço para, no ActionListener dos botões, saber onde o cursor do mouse está ativo e colocar o caractere na referida caixa de texto onde estiver o cursor?
Obrigado a todos.