Como usar o UndoManager java, help !

estou criando um código, e preciso que ao clicar no botão desfazer a função desfazer que todos conhecemos seja aplicada ao meu JTextArea, aparentemente tenho que usar o UndoManager mas já pesquisei fontes em todos os lugares e não estou conseguindo entender como funciona e como aplicar ao meu JTextArea. Alguém pode explicar como faço isso ?