Olá a todos, estou tendo um “pequeno” problema com um jlist. Pretendo criar uma espécie de estoque e para isso criei um jform com de três botões: cadastro de produto, atualização de produto e consulta de produto. Consegui fazer a parte do cadastramento do produto, inclusive a sua transferência para a jlist do form consulta ao clicar no botão de cadastramento, mas como faço para continuar mostrando o conteúdo dessa lista se eu chamá-la de outro lugar?
Por exemplo:
mas quando tento por outro lugar…
Alguma alma caridosa para me ajudar? Vale ressaltar que apesar de ter aprendido um pouco de mysql nunca fiz uma relação entre ele e o JAVA, por isso se possível gostaria de resolver isso com um txt 
Segue códigos:
####FormEstoque:
/*
* To change this license header, choose License Headers in Project Properties.
* To change this template file, choose Tools | Templates
* and open the template in the editor.
*/
package view;
import javax.swing.ImageIcon;
import java.util.ArrayList;
/**
*
* @author Controle
*/
public class FormEstoque extends javax.swing.JInternalFrame {
/**
* Creates new form FormLanchonete
*/
public double valorCarro = 0, valorpintura = 0, valorTotal = 0, valoracessorio = 0;
public int verificacao = 0;
public FormEstoque() {
initComponents();
setFrameIcon(new ImageIcon(this.getClass().getResource("../imagem/stock (1).png")));
}
/**
* This method is called from within the constructor to initialize the form.
* WARNING: Do NOT modify this code. The content of this method is always
* regenerated by the Form Editor.
*/
@SuppressWarnings("unchecked")
// <editor-fold defaultstate="collapsed" desc="Generated Code">
private void initComponents() {
bcadastro = new javax.swing.JButton();
bnovo = new javax.swing.JButton();
bdispo = new javax.swing.JButton();
setBackground(new java.awt.Color(26, 147, 220));
setClosable(true);
setMaximizable(true);
setTitle("Estoque");
bcadastro.setText("Cadastrar novo produto");
bcadastro.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
bcadastroActionPerformed(evt);
}
});
bnovo.setText("Atualizar novo produto");
bnovo.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
bnovoActionPerformed(evt);
}
});
bdispo.setText("Consultar produtos em estoque");
bdispo.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
bdispoActionPerformed(evt);
}
});
javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());
getContentPane().setLayout(layout);
layout.setHorizontalGroup(
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(layout.createSequentialGroup()
.addContainerGap()
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false)
.addComponent(bdispo, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
.addComponent(bnovo, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
.addComponent(bcadastro, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
.addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
);
layout.setVerticalGroup(
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(layout.createSequentialGroup()
.addContainerGap()
.addComponent(bcadastro)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addComponent(bnovo)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addComponent(bdispo)
.addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
);
pack();
}// </editor-fold>
private void bcadastroActionPerformed(java.awt.event.ActionEvent evt) {
// TODO add your handling code here:
CadastroEstoque cada = new CadastroEstoque();
cada.setVisible(true);
}
private void bnovoActionPerformed(java.awt.event.ActionEvent evt) {
// TODO add your handling code here:
ConsultarEstoque cada = new ConsultarEstoque();
cada.setVisible(true);
}
private void bdispoActionPerformed(java.awt.event.ActionEvent evt) {
// TODO add your handling code here:
AtualizarEstoque cada = new AtualizarEstoque();
cada.setVisible(true);
}
// Variables declaration - do not modify
private javax.swing.JButton bcadastro;
private javax.swing.JButton bdispo;
private javax.swing.JButton bnovo;
// End of variables declaration
}
formCadastro:
/*
* To change this license header, choose License Headers in Project Properties.
* To change this template file, choose Tools | Templates
* and open the template in the editor.
*/
package view;
/**
*
* @author João Pedro
*/
public class CadastroEstoque extends javax.swing.JFrame {
public String ListaNome, ListaQntd, ListaForne;
/**
* Creates new form CadastroEstoque
*/
public CadastroEstoque() {
initComponents();
}
ConsultarEstoque consulta = new ConsultarEstoque();
/**
* This method is called from within the constructor to initialize the form.
* WARNING: Do NOT modify this code. The content of this method is always
* regenerated by the Form Editor.
*/
@SuppressWarnings("unchecked")
// <editor-fold defaultstate="collapsed" desc="Generated Code">
private void initComponents() {
jLabel1 = new javax.swing.JLabel();
jLabel2 = new javax.swing.JLabel();
jLabel3 = new javax.swing.JLabel();
txtnomepro = new javax.swing.JTextField();
txtforne = new javax.swing.JTextField();
txtqntd = new javax.swing.JTextField();
bcadastrar = new javax.swing.JButton();
blimpar = new javax.swing.JButton();
setTitle("Cadastro de Estoque");
jLabel1.setText("Nome do Produto");
jLabel2.setText("Fornecedor");
jLabel3.setText("Qntd.");
txtnomepro.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
txtnomeproActionPerformed(evt);
}
});
txtforne.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
txtforneActionPerformed(evt);
}
});
txtqntd.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
txtqntdActionPerformed(evt);
}
});
bcadastrar.setText("Cadastrar");
bcadastrar.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
bcadastrarActionPerformed(evt);
}
});
blimpar.setText("Limpar");
blimpar.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
blimparActionPerformed(evt);
}
});
javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());
getContentPane().setLayout(layout);
layout.setHorizontalGroup(
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(layout.createSequentialGroup()
.addContainerGap()
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(layout.createSequentialGroup()
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(jLabel1)
.addComponent(jLabel2, javax.swing.GroupLayout.Alignment.TRAILING)
.addComponent(jLabel3, javax.swing.GroupLayout.Alignment.TRAILING))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(txtnomepro)
.addComponent(txtforne)
.addComponent(txtqntd)))
.addGroup(layout.createSequentialGroup()
.addComponent(blimpar)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, 79, Short.MAX_VALUE)
.addComponent(bcadastrar)))
.addContainerGap())
);
layout.setVerticalGroup(
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(layout.createSequentialGroup()
.addContainerGap()
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(jLabel1)
.addComponent(txtnomepro, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(jLabel2)
.addComponent(txtforne, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(jLabel3)
.addComponent(txtqntd, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(bcadastrar)
.addComponent(blimpar))
.addContainerGap(16, Short.MAX_VALUE))
);
pack();
}// </editor-fold>
private void txtnomeproActionPerformed(java.awt.event.ActionEvent evt) {
// TODO add your handling code here:
}
private void txtforneActionPerformed(java.awt.event.ActionEvent evt) {
// TODO add your handling code here:
}
private void txtqntdActionPerformed(java.awt.event.ActionEvent evt) {
// TODO add your handling code here:
}
private void blimparActionPerformed(java.awt.event.ActionEvent evt) {
// TODO add your handling code here:
txtnomepro.setText("");
txtforne.setText("");
txtqntd.setText("");
}
private void bcadastrarActionPerformed(java.awt.event.ActionEvent evt) {
// TODO add your handling code here:
ListaNome=txtnomepro.getText();
ListaForne=txtforne.getText();
ListaQntd=txtqntd.getText();
consulta.adicionaLista(this, ListaNome, ListaForne, ListaQntd);
consulta.setVisible(true);
}
/**
* @param args the command line arguments
*/
public static void main(String args[]) {
/* Set the Nimbus look and feel */
//<editor-fold defaultstate="collapsed" desc=" Look and feel setting code (optional) ">
/* If Nimbus (introduced in Java SE 6) is not available, stay with the default look and feel.
* For details see http://download.oracle.com/javase/tutorial/uiswing/lookandfeel/plaf.html
*/
try {
for (javax.swing.UIManager.LookAndFeelInfo info : javax.swing.UIManager.getInstalledLookAndFeels()) {
if ("Nimbus".equals(info.getName())) {
javax.swing.UIManager.setLookAndFeel(info.getClassName());
break;
}
}
} catch (ClassNotFoundException ex) {
java.util.logging.Logger.getLogger(CadastroEstoque.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
} catch (InstantiationException ex) {
java.util.logging.Logger.getLogger(CadastroEstoque.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
} catch (IllegalAccessException ex) {
java.util.logging.Logger.getLogger(CadastroEstoque.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
} catch (javax.swing.UnsupportedLookAndFeelException ex) {
java.util.logging.Logger.getLogger(CadastroEstoque.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
}
//</editor-fold>
/* Create and display the form */
java.awt.EventQueue.invokeLater(new Runnable() {
public void run() {
new CadastroEstoque().setVisible(true);
}
});
}
// Variables declaration - do not modify
private javax.swing.JButton bcadastrar;
private javax.swing.JButton blimpar;
private javax.swing.JLabel jLabel1;
private javax.swing.JLabel jLabel2;
private javax.swing.JLabel jLabel3;
private javax.swing.JTextField txtforne;
private javax.swing.JTextField txtnomepro;
private javax.swing.JTextField txtqntd;
// End of variables declaration
}
formAtualizar:nada ainda
formConsultar:
/*
* To change this license header, choose License Headers in Project Properties.
* To change this template file, choose Tools | Templates
* and open the template in the editor.
*/
package view;
import javax.swing.DefaultListModel;
/**
*
* @author João Pedro
*/
public class ConsultarEstoque extends javax.swing.JFrame {
private DefaultListModel list;
private CadastroEstoque cadastro;
/**
* Creates new form ConsultarEstoque
*/
public ConsultarEstoque() {
initComponents();
list=new DefaultListModel();
jList2.setModel(list);
}
public void adicionaLista(CadastroEstoque cada, String nome, String Forne, String Qntd){
list.addElement(nome+Forne+Qntd);
}
/**
* This method is called from within the constructor to initialize the form.
* WARNING: Do NOT modify this code. The content of this method is always
* regenerated by the Form Editor.
*/
@SuppressWarnings("unchecked")
// <editor-fold defaultstate="collapsed" desc="Generated Code">
private void initComponents() {
jScrollPane1 = new javax.swing.JScrollPane();
jList2 = new javax.swing.JList<>();
jScrollPane1.setViewportView(jList2);
javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());
getContentPane().setLayout(layout);
layout.setHorizontalGroup(
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(layout.createSequentialGroup()
.addContainerGap()
.addComponent(jScrollPane1, javax.swing.GroupLayout.DEFAULT_SIZE, 380, Short.MAX_VALUE)
.addContainerGap())
);
layout.setVerticalGroup(
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(layout.createSequentialGroup()
.addContainerGap()
.addComponent(jScrollPane1, javax.swing.GroupLayout.DEFAULT_SIZE, 278, Short.MAX_VALUE)
.addContainerGap())
);
pack();
}// </editor-fold>
/**
* @param args the command line arguments
*/
public static void main(String args[]) {
/* Set the Nimbus look and feel */
//<editor-fold defaultstate="collapsed" desc=" Look and feel setting code (optional) ">
/* If Nimbus (introduced in Java SE 6) is not available, stay with the default look and feel.
* For details see http://download.oracle.com/javase/tutorial/uiswing/lookandfeel/plaf.html
*/
try {
for (javax.swing.UIManager.LookAndFeelInfo info : javax.swing.UIManager.getInstalledLookAndFeels()) {
if ("Nimbus".equals(info.getName())) {
javax.swing.UIManager.setLookAndFeel(info.getClassName());
break;
}
}
} catch (ClassNotFoundException ex) {
java.util.logging.Logger.getLogger(ConsultarEstoque.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
} catch (InstantiationException ex) {
java.util.logging.Logger.getLogger(ConsultarEstoque.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
} catch (IllegalAccessException ex) {
java.util.logging.Logger.getLogger(ConsultarEstoque.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
} catch (javax.swing.UnsupportedLookAndFeelException ex) {
java.util.logging.Logger.getLogger(ConsultarEstoque.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
}
//</editor-fold>
/* Create and display the form */
java.awt.EventQueue.invokeLater(new Runnable() {
public void run() {
new ConsultarEstoque().setVisible(true);
}
});
}
// Variables declaration - do not modify
private javax.swing.JList<String> jList2;
private javax.swing.JScrollPane jScrollPane1;
// End of variables declaration
}

