Compartilhar dados de um JFrame para o outro

Boa Noite galera, beleza?

Estou na tentativa de facilitar o meu sisteminha, visando simplificação para o usuário final…
Tenho um JFrame chamado Frente de Caixa, o qual possui vários vários objetos, um deles é um JButton que abre uma JFrame secundária, a qual possui uma tabela com dados do banco…
Preciso de algumas opiniões de como passar os dados da JFrame Secundária para a JFrame Primária ao clicar no botão “Enviar Dados”.

OBS.: Consegui fazer isso com Getters e Setters, porém, além do botão “Enviar Dados” (JFrame Secundária) precisei criar outro botão “Receber Dados” (na JFrame Primária).
-Já tentei passar por parâmetro, porém sem sucesso.

Teria um método automático, ou seja, clicar em “Enviar Dados”, fechar a JFrame Secundária e automaticamente os dados selecionados estarem na JFrame Primária?

Vamos la

vc pode usar orientação a objetos.

seus dois frames podem ter acesso a um objeto em comum, um “buffer de eventos”, o que esse objeto faz é, basicamente:

public interface BufferEventos{
   public void Enviar(Dados dados /* algo que represente o que vc quer enviar */);
   public void Registrar(Recebedor recebedor /*algo que representa o que vai recever os dados*/);
}

public interface Recebedor {
   public void RecebeDados(dados Dados);
}

agora veja como fica facil:

BufferEventos buffer = ...

buffer.Registrar( frameB );

frameA.setBufferEventos( buffer );

bastaria fazer, dentro do frameA

this.buffer.EnviarDados( ... )

e dentro da implementação do buffer vc pode fazer:

para cada Recebedor {
   recebedor.RecebeDados( dados )
}

imaginando que o seu buffer vai ter um List ( ArrayList ? ) de Recebedores, ou pode ter apenas um

o que vc precisa fazer é implementar o RecebeDados no outro frame de forma a setar as coisas que vc quer.

esse padrão funciona de duas formas, inclusive, vc pode criar 2 buffers para se comunicar bidirecionalmente.

a vantagem de vc ter varios recebedores é que vc pode criar um que fica imprimindo na tela o que aconteceu, para vc entender o que esta acontecendo. ou se quiser tabalhar com multiplas telas.

Essa forma de trabalhar com eventos é muito desacoplada, em termos de codigo.vc pode fazer um frame tendo referencia para o outro e atuando no outro, de forma direta. existem vantagens e desvantagens em cada abordagem.

de uma estudada no modelo MVC que pode te ajuda bastante a organizar seu codigo