Você pode usar
INSERT ... RETURNING
ou UPDATE ... RETURNING
para recuperar os valores que foram alterados pelo trigger, então não há necessidade de fazer outro SELECT. Além disso, eu diria que depende do seu ambiente. Se o aplicativo for de missão crítica e falhar miseravelmente se essas colunas não forem mantidas corretamente, eu ficaria com os gatilhos.
Se isso for apenas por conveniência no front-end (e puder lidar com conflitos devido a valores incorretos normalmente), a abordagem JPA provavelmente será mais fácil de manter.