[RESOLVIDO]ActionListener

50 respostas
V

Bom dia galerinha,

To com o seguinte projeto para desenvolver, tenho que criar um projeto desktop para uma microempresa de assistência de pc, eles me pediram a seguinte coisa:

1:Uma interface gráfica bonitinha,(já fiz)
2:Usar um banco localhost MySql;
3:Tem que ter 3 abas(CLIENTE,SERVIÇO e PESQUISAR);

Bom a parte gráfica está feita segue:
package view;

import javax.swing.DebugGraphics;
import javax.swing.DefaultComboBoxModel;
import javax.swing.JButton;
import javax.swing.JCheckBox;
import javax.swing.JLabel;
import javax.swing.JList;
import javax.swing.JPanel;
import javax.swing.JScrollPane;
import javax.swing.JTabbedPane;
import javax.swing.JTextField;
import javax.swing.ListModel;
import javax.swing.SwingUtilities;

import com.cloudgarden.layout.AnchorConstraint;
import com.cloudgarden.layout.AnchorLayout;

public class TecInfoView extends javax.swing.JFrame {
	private JPanel ClienteJPanel;
	private JTextField nomeTextField;
	private JTextField jTextField1;
	private JLabel jLabel1;
	private JButton pesquisarButton;
	private JCheckBox servicoCheckBox;
	private JCheckBox clienteCheckBox;
	private JPanel PesquisaJPanel;
	private JTextField enderecoTextField;
	private JTabbedPane jTabbedPane;
	private JButton gravarBotaoServicoButton;
	private JTextField descricaoTextField;
	private JLabel descricaoLabel;
	private JTextField clienteTextField;
	private JLabel clienteLabel;
	private JScrollPane jScrollPane1;
	private JList jList;
	private JPanel ServiçoJPanel;
	private JButton botaoGravarjButton;
	private JTextField emailTextField;
	private JLabel emailLabel;
	private JTextField cidadeTextField;
	private JLabel cidadeLabel;
	private JTextField sobreNomeTextField;
	private JLabel sobreNomeLabel;
	private JLabel enderecoLabel;
	private JLabel nomeLabel;

	public static void main(String[] args) {
		SwingUtilities.invokeLater(new Runnable() {
			public void run() {
				TecInfoView inst = new TecInfoView();
				inst.setLocationRelativeTo(null);
				inst.setVisible(true);
			}
		});
	}

	public TecInfoView() {
		super();
		initGUI();
	}

	private void initGUI() {
		try {
			{
				this.setName("");
				AnchorLayout thisLayout = new AnchorLayout();
				getContentPane().setLayout(thisLayout);
				this.setTitle("TECINFO LTDA - Sistema Operacional");
				{
					jTabbedPane = new JTabbedPane();
					getContentPane().add(
							jTabbedPane,
							new AnchorConstraint(12, 984, 977, 9,
									AnchorConstraint.ANCHOR_REL,
									AnchorConstraint.ANCHOR_REL,
									AnchorConstraint.ANCHOR_REL,
									AnchorConstraint.ANCHOR_REL));
					jTabbedPane.setPreferredSize(new java.awt.Dimension(701,
							490));
					{
						ClienteJPanel = new JPanel();
						jTabbedPane
								.addTab("Cliente", null, ClienteJPanel, null);
						AnchorLayout clientePanelLayout = new AnchorLayout();
						ClienteJPanel.setLayout(clientePanelLayout);
						ClienteJPanel.setPreferredSize(new java.awt.Dimension(
								197, 217));
						ClienteJPanel.setBackground(new java.awt.Color(255,
								255, 255));
						{
							botaoGravarjButton = new JButton();
							ClienteJPanel.add(botaoGravarjButton,
									new AnchorConstraint(856, 984, 977, 710,
											AnchorConstraint.ANCHOR_REL,
											AnchorConstraint.ANCHOR_REL,
											AnchorConstraint.ANCHOR_REL,
											AnchorConstraint.ANCHOR_REL));
							botaoGravarjButton.setText("Gravar");
							botaoGravarjButton
									.setPreferredSize(new java.awt.Dimension(
											191, 56));
						}
						{
							emailTextField = new JTextField();
							ClienteJPanel.add(emailTextField,
									new AnchorConstraint(649, 990, 705, 48,
											AnchorConstraint.ANCHOR_REL,
											AnchorConstraint.ANCHOR_REL,
											AnchorConstraint.ANCHOR_REL,
											AnchorConstraint.ANCHOR_REL));
							emailTextField
									.setPreferredSize(new java.awt.Dimension(
											656, 26));
						}
						{
							emailLabel = new JLabel();
							ClienteJPanel.add(emailLabel, new AnchorConstraint(
									585, 150, 615, 48,
									AnchorConstraint.ANCHOR_REL,
									AnchorConstraint.ANCHOR_REL,
									AnchorConstraint.ANCHOR_REL,
									AnchorConstraint.ANCHOR_REL));
							emailLabel.setText("E-mail");
							emailLabel.setPreferredSize(new java.awt.Dimension(
									71, 14));
						}
						{
							cidadeTextField = new JTextField();
							ClienteJPanel.add(cidadeTextField,
									new AnchorConstraint(307, 532, 356, 48,
											AnchorConstraint.ANCHOR_REL,
											AnchorConstraint.ANCHOR_REL,
											AnchorConstraint.ANCHOR_REL,
											AnchorConstraint.ANCHOR_REL));
							cidadeTextField
									.setPreferredSize(new java.awt.Dimension(
											337, 23));
						}
						{
							cidadeLabel = new JLabel();
							ClienteJPanel.add(cidadeLabel,
									new AnchorConstraint(251, 153, 281, 48,
											AnchorConstraint.ANCHOR_REL,
											AnchorConstraint.ANCHOR_REL,
											AnchorConstraint.ANCHOR_REL,
											AnchorConstraint.ANCHOR_REL));
							cidadeLabel.setText("Cidade");
							cidadeLabel
									.setPreferredSize(new java.awt.Dimension(
											73, 14));
						}
						{
							sobreNomeTextField = new JTextField();
							ClienteJPanel.add(sobreNomeTextField,
									new AnchorConstraint(134, 983, 184, 532,
											AnchorConstraint.ANCHOR_REL,
											AnchorConstraint.ANCHOR_REL,
											AnchorConstraint.ANCHOR_REL,
											AnchorConstraint.ANCHOR_REL));
							sobreNomeTextField
									.setPreferredSize(new java.awt.Dimension(
											314, 24));
						}
						{
							sobreNomeLabel = new JLabel();
							ClienteJPanel.add(sobreNomeLabel,
									new AnchorConstraint(80, 650, 110, 532,
											AnchorConstraint.ANCHOR_REL,
											AnchorConstraint.ANCHOR_REL,
											AnchorConstraint.ANCHOR_REL,
											AnchorConstraint.ANCHOR_REL));
							sobreNomeLabel.setText("Sobrenome");
							sobreNomeLabel
									.setPreferredSize(new java.awt.Dimension(
											82, 14));
						}
						{
							enderecoLabel = new JLabel();
							ClienteJPanel.add(enderecoLabel,
									new AnchorConstraint(406, 206, 451, 48,
											AnchorConstraint.ANCHOR_REL,
											AnchorConstraint.ANCHOR_REL,
											AnchorConstraint.ANCHOR_REL,
											AnchorConstraint.ANCHOR_REL));
							enderecoLabel.setText("Endereço");
							enderecoLabel
									.setPreferredSize(new java.awt.Dimension(
											110, 21));
						}
						{
							nomeTextField = new JTextField();
							ClienteJPanel.add(nomeTextField,
									new AnchorConstraint(134, 493, 184, 48,
											AnchorConstraint.ANCHOR_REL,
											AnchorConstraint.ANCHOR_REL,
											AnchorConstraint.ANCHOR_REL,
											AnchorConstraint.ANCHOR_REL));
							nomeTextField
									.setPreferredSize(new java.awt.Dimension(
											314, 24));
						}
						{
							nomeLabel = new JLabel();
							ClienteJPanel.add(nomeLabel, new AnchorConstraint(
									72, 118, 119, 48,
									AnchorConstraint.ANCHOR_REL,
									AnchorConstraint.ANCHOR_REL,
									AnchorConstraint.ANCHOR_REL,
									AnchorConstraint.ANCHOR_REL));
							nomeLabel.setText("Nome");
							nomeLabel.setPreferredSize(new java.awt.Dimension(
									49, 22));
						}
						{
							enderecoTextField = new JTextField();
							ClienteJPanel.add(enderecoTextField,
									new AnchorConstraint(477, 532, 526, 48,
											AnchorConstraint.ANCHOR_REL,
											AnchorConstraint.ANCHOR_REL,
											AnchorConstraint.ANCHOR_REL,
											AnchorConstraint.ANCHOR_REL));
							enderecoTextField
									.setPreferredSize(new java.awt.Dimension(
											337, 23));
						}
					}
					{
						ServiçoJPanel = new JPanel();
						jTabbedPane
								.addTab("Serviço", null, ServiçoJPanel, null);
						AnchorLayout servicoPanelLayout = new AnchorLayout();
						ServiçoJPanel.setLayout(servicoPanelLayout);
						ServiçoJPanel.setPreferredSize(new java.awt.Dimension(
								261, 186));
						ServiçoJPanel.setBackground(new java.awt.Color(255,
								255, 255));
						{
							gravarBotaoServicoButton = new JButton();
							ServiçoJPanel.add(gravarBotaoServicoButton,
									new AnchorConstraint(856, 984, 977, 711,
											AnchorConstraint.ANCHOR_REL,
											AnchorConstraint.ANCHOR_REL,
											AnchorConstraint.ANCHOR_REL,
											AnchorConstraint.ANCHOR_REL));
							gravarBotaoServicoButton.setText("Gravar");
							gravarBotaoServicoButton
									.setPreferredSize(new java.awt.Dimension(
											190, 56));
						}
						{
							descricaoTextField = new JTextField();
							ServiçoJPanel.add(descricaoTextField,
									new AnchorConstraint(294, 983, 813, 16,
											AnchorConstraint.ANCHOR_REL,
											AnchorConstraint.ANCHOR_REL,
											AnchorConstraint.ANCHOR_REL,
											AnchorConstraint.ANCHOR_REL));
							descricaoTextField
									.setPreferredSize(new java.awt.Dimension(
											673, 241));
							descricaoTextField
									.setDebugGraphicsOptions(DebugGraphics.BUFFERED_OPTION);
						}
						{
							descricaoLabel = new JLabel();
							ServiçoJPanel.add(descricaoLabel,
									new AnchorConstraint(240, 223, 268, 9,
											AnchorConstraint.ANCHOR_REL,
											AnchorConstraint.ANCHOR_REL,
											AnchorConstraint.ANCHOR_REL,
											AnchorConstraint.ANCHOR_REL));
							descricaoLabel.setText("Descrição");
							descricaoLabel
									.setPreferredSize(new java.awt.Dimension(
											149, 13));
						}
						{
							clienteTextField = new JTextField();
							ServiçoJPanel.add(clienteTextField,
									new AnchorConstraint(130, 595, 182, 16,
											AnchorConstraint.ANCHOR_REL,
											AnchorConstraint.ANCHOR_REL,
											AnchorConstraint.ANCHOR_REL,
											AnchorConstraint.ANCHOR_REL));
							clienteTextField
									.setPreferredSize(new java.awt.Dimension(
											403, 24));
						}
						{
							clienteLabel = new JLabel();
							ServiçoJPanel.add(clienteLabel,
									new AnchorConstraint(76, 104, 104, 9,
											AnchorConstraint.ANCHOR_REL,
											AnchorConstraint.ANCHOR_REL,
											AnchorConstraint.ANCHOR_REL,
											AnchorConstraint.ANCHOR_REL));
							clienteLabel.setText("Cliente");
							clienteLabel
									.setPreferredSize(new java.awt.Dimension(
											66, 13));
						}
					}
					{
						PesquisaJPanel = new JPanel();
						AnchorLayout PesquisaJPanelLayout = new AnchorLayout();
						PesquisaJPanel.setLayout(PesquisaJPanelLayout);
						jTabbedPane.addTab("Pesquisa", null, PesquisaJPanel,
								null);
						PesquisaJPanel.setBackground(new java.awt.Color(255,
								255, 255));
						{
							jScrollPane1 = new JScrollPane();
							PesquisaJPanel.add(jScrollPane1,
									new AnchorConstraint(273, 982, 841, 36,
											AnchorConstraint.ANCHOR_REL,
											AnchorConstraint.ANCHOR_REL,
											AnchorConstraint.ANCHOR_REL,
											AnchorConstraint.ANCHOR_REL));
							jScrollPane1
									.setPreferredSize(new java.awt.Dimension(
											780, 285));
							{
								ListModel jListModel = new DefaultComboBoxModel(
										new String[] { "Item One", "Item Two" });
								jList = new JList();
								jScrollPane1.setViewportView(jList);
								jList.setModel(jListModel);
								jList.setPreferredSize(new java.awt.Dimension(
										780, 285));
							}
						}
						{
							jTextField1 = new JTextField();
							PesquisaJPanel.add(jTextField1,
									new AnchorConstraint(132, 516, 174, 26,
											AnchorConstraint.ANCHOR_REL,
											AnchorConstraint.ANCHOR_REL,
											AnchorConstraint.ANCHOR_REL,
											AnchorConstraint.ANCHOR_REL));
							jTextField1
									.setPreferredSize(new java.awt.Dimension(
											405, 21));
						}
						{
							jLabel1 = new JLabel();
							PesquisaJPanel.add(jLabel1, new AnchorConstraint(
									92, 108, 120, 26,
									AnchorConstraint.ANCHOR_REL,
									AnchorConstraint.ANCHOR_REL,
									AnchorConstraint.ANCHOR_REL,
									AnchorConstraint.ANCHOR_REL));
							jLabel1.setText("Cliente");
							jLabel1.setPreferredSize(new java.awt.Dimension(68,
									14));
						}
						{
							pesquisarButton = new JButton();
							PesquisaJPanel.add(pesquisarButton,
									new AnchorConstraint(857, 987, 979, 713,
											AnchorConstraint.ANCHOR_REL,
											AnchorConstraint.ANCHOR_REL,
											AnchorConstraint.ANCHOR_REL,
											AnchorConstraint.ANCHOR_REL));
							pesquisarButton.setText("Pesquisar");
							pesquisarButton
									.setPreferredSize(new java.awt.Dimension(
											226, 61));
						}
						{
							servicoCheckBox = new JCheckBox();
							PesquisaJPanel.add(servicoCheckBox,
									new AnchorConstraint(134, 700, 170, 617,
											AnchorConstraint.ANCHOR_REL,
											AnchorConstraint.ANCHOR_REL,
											AnchorConstraint.ANCHOR_REL,
											AnchorConstraint.ANCHOR_REL));
							servicoCheckBox.setText("Serviço");
							servicoCheckBox
									.setPreferredSize(new java.awt.Dimension(
											68, 18));
							servicoCheckBox.setBackground(new java.awt.Color(
									255, 255, 255));
						}
						{
							clienteCheckBox = new JCheckBox();
							PesquisaJPanel.add(clienteCheckBox,
									new AnchorConstraint(84, 701, 120, 618,
											AnchorConstraint.ANCHOR_REL,
											AnchorConstraint.ANCHOR_REL,
											AnchorConstraint.ANCHOR_REL,
											AnchorConstraint.ANCHOR_REL));
							clienteCheckBox.setText("Cliente");
							clienteCheckBox
									.setPreferredSize(new java.awt.Dimension(
											68, 18));
							clienteCheckBox.setBackground(new java.awt.Color(
									255, 255, 255));
						}
					}
				}
			}
			this.setSize(859, 574);
		} catch (Exception e) {
			e.printStackTrace();
		}
	}

}

Bom, como viram vai ter 2 botões GRAVAR e um PESQUISAR, e na aba PESQUISAR vai ter checkbox, quando marcados tal, vai ter que ser retornavel o item correto, minha duvida é o seguinte, como faço para salvar os dados digitados TextFiel, salaverem no banco quando clicado GRAVAR e na aba PESQUISAR, retornar a pesquisa dentro de um TextFiel ou JTable (tbm é minha dúvida)
Fiz uma classe para conectar-se ao banco segue:

package model;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;

public class ConectaBanco {

	public Connection getConnection() {

		try {
			return DriverManager.getConnection(
					"jdbc:mysql://localhost/tecinfo", "root", "adminadmin");

		} catch (SQLException e) {
			throw new RuntimeException(e);
		}

	}

}

Que também está rodando, certinho.

Obrigado, aguardo resposta.

50 Respostas

drsmachado

Você precisará de 2 actionListeners diferentes.
Cada um deles será responsável pela ação correspondente, o actionListener de gravar irá proceder com a persistência e o de Pesquisar irá apenas fazer o select com os parâmetros passados.

V

ta, isso eu entendi, so não sei é fazer o codigo para gravar no banco, e de pesquisar, :s

Mais o que você achou do código?

drsmachado

Existem n exemplos de CRUD na internet e em especial aqui no guj, uma pesquisa rápida e vc conseguirá exemplos.
<M$ mode: on>
A não ser que deseja dividir os lucros, aí podemos negociar…
<M$ mode: off>

V

cara, não teria como você fazer ou me mostrar por ai um exemplo prático?

rafaelviny

vinigess:
so não sei é fazer o codigo para gravar no banco, e de pesquisar, :s

suguri que estude JDBC

ou senão faça como o drsmachado falou

vai ter que dividir lucros, pq ninguem vai fazer para vc de graça

V

que fazer pra mim o que mew, é só isso toda o schema do db esta pronta, tudo rodando perfeito, só falta é esse adicionar mesmo.

rafaelviny

entao estude como usar JDBC e seja feliz 8)

rampazzo1989

Não entendo certas pessoas que se negam a ajudar o que sabem. Não vão fazer pro cara, vão ensinar. Porque ele tem que aprender do jeito mais difícil, porque foi assim que aprendemos? BAH!

Olha só amigo, você já sabe que tem que usar um ActionListener pra cada coisa neh… no botão ‘Gravar’, como você está acessando diretamente o banco das classes (posso deduzir) você irá inserir código para acesso ao banco no seu ActionListener.

Ficará mais ou menos assim:

String sql = “INSERT INTO tabela VALUES(…)”; //AQUI CONSTRUIRÁ O SQL PARA INSERÇÃO, CASO NÃO SAIBA PERGUNTE. MAS ACONSELHO ESTUDAR TBM.

Connection conn = ConectaBanco.getConnection(); //AQUI VOCÊ PEGA A CONEXAO
conn.open(); //NÃO LEMBRO SE É NECESSÁRIO. SE NÃO FUNFAR, TENTA
Statement stmt = conn.createStatement();
int linhasAfetadas = stmt.executeUpdate(sql); //SE RETORNAR 1, PORQUE FUNFOU!

aí lembra de fechar com
conn.close();

Mano, to explicando bem basicão do que eu lembro tah, é esse o caminho, mas pode ter alguma coisa diferente.
Mas tenta aí. Qualquer coisa me pergunta. Se você usar DAO ou outro padrão, vai ser diferente, é claro.
Lembra de usar try catch para tratar excessões, inclusive dar rollback na transação caso já saiba. Senão vamos mais devagar.
Espero ajudar.

V
Pois é, tem gente que se acha, mais falam isso porque também não sabe, pois JDBC eu sei mew, e DAO também, já fiz a seguinte classe em um outro projeto DAO:
public void adiciona(Contato contato) {

		String sql = "insert into contatos (nome, email, endereco, dataNascimento) values (?,?,?,?)";

		try {

			PreparedStatement stmt = (PreparedStatement) connection
					.prepareStatement(sql);

			stmt.setString(1, contato.getNome());
			stmt.setString(2, contato.getEmail());
			stmt.setString(3, contato.getEndereco());
			stmt.setDate(4, new Date(contato.getDataNascimento()
					.getTimeInMillis()));

			stmt.execute();
			stmt.close();
		} catch (SQLException e) {
			throw new RuntimeException(e);
		}

	}

Seria isso? e se for, esse codigo vai dentro do ActionListener? É nisso que estou me batendo, :s

V

Pessoal, comecei a fazer isso mas não sei se esta certo

botaoGravarjButton.addActionListener(new ActionListener() {
								
							
								public void actionPerformed(ActionEvent e) {
									
									String sql = "insert into clientes (nome, sobreNome, cidade, endereco, email) values (?,?,?,?,?)";									
									
									try{
									
									Connection connection = ConectaBanco.getConnection();
									PreparedStatement stmt = (PreparedStatement) connection.prepareStatement(sql); 
									
									stmt.setString(1, ClienteJPanel.);

										
								}catch (SQLException i){
									throw new RuntimeException(i);
								}
								}
							)}
rafaelviny

vinigess espero que vc nao estega se referindo a mim.
eu nao sei usar isso por isso trabalho na 58 melhor empresa de TI do Brasil, merda, que triste.
o problema não é nao querer ensinar, o problema é a PREGUIÇA de alguns usuarios do forum.

se vc digitar JDBC no GOOGLE ira vir Aproximadamente 250.000 resultados (0,05 segundos) .
é bom tomar um pouco de vergonha na cara ne?

no meu post tem EXTREMADAMENTE TUDO o que vc precisa para resolver seu problema.

ESTUDE JDBC

rafaelviny

agora sim vc esta postando perguntas descentes

se vc estiver usando BEANS o que aconselho e o padrao DAO, deveria ser algo assim

dentro do seu ACTIONLISTENER chame o metodo adiciona(Contato contato) e ta feito a magica

V

Cara, não estou usando BEANS e sim ECLIPSE,
e como eu poderia fazer uma classe DAO, se eu estou colocando os dados em textfield? tem como? ai iria ficar cada DAO para cada aba? e estanciar cada J…

Abraços!

rafaelviny

beans != netbeans

esta afirmação é fora de contexto, DAO é um padrão, são camadas.

da uma lida sobre DAO, sobre o encapsulamento dos dados com os beans que vc vai entender

V
cara fiz o DAO so estou enpacado na parte do stmt
package dao;

import java.sql.Connection;
import java.sql.PreparedStatement;

import model.Cliente;
import model.ConectaBanco;

public class ClienteDAO {
	
	private Connection connection;
	
	public ClienteDAO(){
		this.connection = new ConectaBanco().getConnection();		
	}
	
	public void adiciona(Cliente cliente){
		
		String sql = "insert into cliente(nome, sobreNome,cidade, endereco, email) values (?,?,?,?,?)";
			
			try {
				
				PreparedStatement stmt = (PreparedStatement) connection.prepareStatement(sql);
				
				stmt.setLong(1, cliente.getNomeTextField());
				
				
				
			} catch (Exception e) {
				// TODO: handle exception
			}
		
		
	}
	

}

Podes ajudar?

rafaelviny

vc tem os ?,?,?,?,?

quer disser que vc tem que ter a mesma quantidade de stmt.set, entendeu?

sua classe dao ta meio confusa mas esse é o caminho..

e parece que esta faltando executar a instrução

public void adiciona(Object obj) {
        UnidadeMedida um = (UnidadeMedida) obj;
        PreparedStatement stmt = null;
        String sql = "insert into unidademedida (nome, sigla)values(?,?)";
        try {
            stmt = conexao.prepareStatement(sql);
            stmt.setString(1, um.getNome());
            stmt.setString(2, um.getSigla());
            stmt.execute();
            stmt.close();
          
        } catch (Exception ex) {
            ex.printStackTrace();
        }
    }

este é um exemplo da execução de uma instrução que passei no TREINAMENTO dos novos colaboradores da empresa aonde trabalho (desconcidere o nivel de abstraçao)

se vc pensar bem nao fui um otario com vc no primeiro post nao foi?

V

Bom dia Rafael,
Pois é, arrumei minha classe DAO, como você sugeriu segue ela:

package dao;

import java.sql.Connection;
import java.sql.PreparedStatement;

import model.Cliente;
import model.ConectaBanco;

public class ClienteDAO {
	
	private Connection connection;
	
	public ClienteDAO(){
		this.connection = new ConectaBanco().getConnection();		
	}
	
	    public void adiciona(Object obj) {  
	    	
		          Cliente cli = (Cliente) obj;  
		          PreparedStatement stmt = null;  
		          String sql = "insert into cliente (nome, sobreNome, cidade, endereco, emal)values(?,?,?,?)";  
		          try {  
		             stmt = connection.prepareStatement(sql);  
		             stmt.setString(1, cli.getNomeTextField());  
		             stmt.setString(2, cli.getSobreNomeTextField());
		             stmt.setString(4, cli.getCidadeTextField());
		             stmt.setString(3, cli.getEnderecoTextField());
		             stmt.setString(4, cli.getEmailTextField());
		             
		             
		             
		             
		             stmt.execute();  
		             stmt.close();  
		             
		         } catch (Exception ex) {  
		             ex.printStackTrace();  
		         }  
		    }  
		
		
	}
	

}

Aí criei outra classe chamada Cliente para pode fazer a DAO, mas acho que tem alguma coisa erra, e não estou achamando o erro segue:

package model;

import javax.swing.JTextField;

public class Cliente {

	private JTextField nomeTextField;
	private JTextField enderecoTextField;
	private JTextField emailTextField;
	private JTextField cidadeTextField;
	private JTextField sobreNomeTextField;

	public JTextField getNomeTextField() {
		return nomeTextField;
	}

	public void setNomeTextField(JTextField nomeTextField) {
		this.nomeTextField = nomeTextField;
	}

	public JTextField getEnderecoTextField() {
		return enderecoTextField;
	}

	public void setEnderecoTextField(JTextField enderecoTextField) {
		this.enderecoTextField = enderecoTextField;
	}

	public JTextField getEmailTextField() {
		return emailTextField;
	}

	public void setEmailTextField(JTextField emailTextField) {
		this.emailTextField = emailTextField;
	}

	public JTextField getCidadeTextField() {
		return cidadeTextField;
	}

	public void setCidadeTextField(JTextField cidadeTextField) {
		this.cidadeTextField = cidadeTextField;
	}

	public JTextField getSobreNomeTextField() {
		return sobreNomeTextField;
	}

	public void setSobreNomeTextField(JTextField sobreNomeTextField) {
		this.sobreNomeTextField = sobreNomeTextField;
	}

}

a outra classe continua a mesma, se púder me ajudar, fico grato.

OBRIGADO!

drsmachado

vinigess:
Cara, não estou usando BEANS e sim ECLIPSE,
e como eu poderia fazer uma classe DAO, se eu estou colocando os dados em textfield? tem como? ai iria ficar cada DAO para cada aba? e estanciar cada J…

Abraços!

Ri muito com esta resposta.
Sinceramente, vou postar minhas atividades aqui e ver se alguém faz, aí recebo meu salário e fico de boa, sem ter que pesquisar e sem ter que pensar muito, apenas reclamar que ninguém ajuda.
É fácil perceber quem tem vontade e quem está com preguiça.

Pior ainda, quem reclama dos que não ajudam não percebem que estão fazendo praticamente o mesmo que estes seres que não são capazes de ir até o google e pesquisar.

Qualquer implementação simples de swing e DAO já resolveria a situação.

Agora, se o nosso camarada trouxesse um erro, uma limitação e uma lista de lugares onde procurou referência, quem sabe teria tido uma resposta mais adequada.

V

Outros membros poderiam ajudar, pf, pelo que saiba isso é um forum para ajudar as pessoas, e eu me espressei errado, eu sou iniciante, e não vou ganha nada com isso, foi um app por conta própria salame.

Obrigado!

drsmachado

Qual a dúvida ou dificuldade, atualmente?
O que você já fez, camarada?
Até onde tua aplicação chega?

rafaelviny

uma coisa que achei muito muito muiiiiiiiiiiiiiiito errada

sua classe Cliente quando vi falei WHAT FUCK?
vc passa componentes (JTextFields), nunca tinha visto essa implementação, e tenho certeza que não é uma implementação descente

drsmachado: Pior ainda, quem reclama dos que não ajudam não percebem que estão fazendo praticamente o mesmo que estes seres que não são capazes de ir até o google e pesquisar. Qualquer implementação simples de swing e DAO já resolveria a situação. Agora, se o nosso camarada trouxesse um erro, uma limitação e uma lista de lugares onde procurou referência, quem sabe teria tido uma resposta mais adequada.

isso é a maior verdade do mundo, penso exatamente o mesmo

Agora, se o nosso camarada trouxesse um erro, uma limitação e uma lista de lugares onde procurou referência, quem sabe teria tido uma resposta mais adequada.
1- regra do forum, traga duvidas, erros, e o que vc implementou (e o conhecimento minimo do que vc está fazendo) e terá centenas de pessoas querendo te ajudar esta é uma abordagem melhor para seu BEAN, e o que solucionará seu problema
public class UnidadeMedida {
    private int unidadeMedidaID;
    private String nome;
    private String sigla;

    public String getNome() {
        return nome;
    }

    public void setNome(String nome) {
        this.nome = nome;
    }

    public String getSigla() {
        return sigla;
    }

    public void setSigla(String sigla) {
        this.sigla = sigla;
    }

    public int getUnidadeMedidaID() {
        return unidadeMedidaID;
    }

    public void setUnidadeMedidaID(int unidadeMedidaID) {
        this.unidadeMedidaID = unidadeMedidaID;
    }
}

voce pode me achar um otário, porem disse que sabia implementar DAO + SWING.

sugeri vc criar sua classe cliente de novo

mas se vc quiser usar essa bagaça que vc ta usando chamada cliente tenta assim

stmt.setString(4, cli.getEmailTextField().getText());

essa sua implementação da [size=24]MEDO[/size]

V

como que deve ser a implemanetação então?? se você poder dar um exemplo, ou vai achar também que eu estou pedindo para você fazer.

rafaelviny

se vc ler meu post eu já di o exemplo!!! (post acima Unidade de Medida)

eu postei a classe DAOUnidadeMedida e o BEAN UnidadeMedida, com esses 2 caras vc resolve seu problema usando padroes

fica bravo comigo nao heheeh :wink:

V

Que bravo o que, :stuck_out_tongue:

Pois bem, continuando essa novela, vou colcar o meu DAO, BEAN, e a actionlistener da VIEW, pois agora eu acho que é só recuperar os dados dos JTextField, mas não ah Cristo que consiga fazer eu recuperar.

DAO

package dao;

import java.sql.Connection;
import java.sql.PreparedStatement;

import model.Cliente;
import model.ConectaBanco;

public class ClienteDAO {

	private Connection connection;

	public ClienteDAO() {
		this.connection = new ConectaBanco().getConnection();
	}

	public void adiciona(Cliente cliente) {
		
		Cliente cli = (Cliente) cliente;
		PreparedStatement stmt = null;
		String sql = "insert into cliente (nome, sobreNome, cidade, endereco , email) values (?,?,?,?,?)";

		try {
			stmt = ConectaBanco.getConnection().prepareStatement(sql);
			stmt.setString(1, cli.getNome());
			stmt.setString(2, cli.getSobreNome());
			stmt.setString(3, cli.getCidade());
			stmt.setString(4, cli.getEndereco());
			stmt.setString(5, cli.getEmail());
			stmt.execute();
			stmt.close();

		} catch (Exception e) {
			// TODO: handle exception
		}

	}
}

BEAN

package model;

public class Cliente {

	private String nome;
	private String sobreNome;
	private String cidade;
	private String endereco;
	private String email;

	public String getNome() {
		return nome;
	}

	public void setNome(String nome) {
		this.nome = nome;
	}

	public String getSobreNome() {
		return sobreNome;
	}

	public void setSobreNome(String sobreNome) {
		this.sobreNome = sobreNome;
	}

	public String getCidade() {
		return cidade;
	}

	public void setCidade(String cidade) {
		this.cidade = cidade;
	}

	public String getEndereco() {
		return endereco;
	}

	public void setEndereco(String endereco) {
		this.endereco = endereco;
	}

	public String getEmail() {
		return email;
	}

	public void setEmail(String email) {
		this.email = email;
	}

}

e a ActionListener da view

botaoGravarjButton.addActionListener(new ActionListener() {
								
								@Override
								public void actionPerformed(ActionEvent e) {
									try {
											
											Cliente cli = new Cliente();
											ClienteDAO cliente = new ClienteDAO();
											cliente.adiciona(cli);
										      
										      System.out.println("Gravado!");
										      
									} catch (Exception e2) {
										e2.printStackTrace();
									}
									
								}
							});

agora acho que estou participando mais e não so pedindo.

OBRIGADO, FICO NO AGUARDO!! :smiley:

Luiz_Aguiar

Sem mais.

V

Luiz, essa “empresa” tecinfo, é uma associação aqui dos meus amigo do condomio que querem tipo, abrir um esquema de formatar pc, trocar placas, essas coisas, se você ve o meu histórico aqui no forum, vera que eu não tenho conhecimento nenhum, e estou realmente aprendendo Java em casa, por isso me propus a fazer esse grande projeto, hehehehehehehehehe.

rafaelviny

vou te dar um conselho, vc está se aventurando muito fundo sem conhecer o basico da coisa..

o que está faltando é muito simples, e vc não está conseguindo enchergar isso, pois lhe falta conhecimentos basicos. resumindo, vc esta colocando a carroça na frente dos burros.

me propus a fazer esse grande projeto

eu nao me nego a ajudar, porem exigo um conhecimento minimo, isso faço aqui na empresa aonde estou dando os treinamentos.

# botaoGravarjButton.addActionListener(new ActionListener() {  
                                   
                                 @Override  
                                 public void actionPerformed(ActionEvent e) {  
                                     try {  
                                               
                                             Cliente cli = new Cliente();  
                                              cli.setNome(meuTextField.getText()); // faça isso para todos seus atributos no caso nome, sobreNome,cidade, endereco,email;  
                                             ClienteDAO cliente = new ClienteDAO();  
                                             cliente.adiciona(cli);  // nesta parte vc esta adicionando um cliente VAZIO
                                                 
                                               System.out.println("Gravado!");  
                                                 
                                     } catch (Exception e2) {  
                                         e2.printStackTrace();  
                                     }  
                                       
                                 }

estou indo contra as regras do forum, que é ajudar em duvidas, estou praticamente programando para vc, e não tem como disser que não.

V

Rafael Vinicius,

Cara tenho que realmente pedir desculpas por tudo que você me ajudo, mas agora eu tenho que fazer a parte do pesquisar, de retornar os dados salvos para a tela, e nessa eu prometo que vou fazer e pedir ajuda, com os bug que aparecer, é que eu sou uma pessoa que infelizmente so consigo ver a coisa funcionar vendo ela pronta, sei que isso é um defeito, mas é a única coisa que me salva.

De coração eu te agradece mesmo, e prometo que cada dia vou melhor mais e mais, você me indicaria qual curso???

Obrigado!

rafaelviny

por nada!!
indico o curso da Caelum ou da K19…
ma area de TI vc tem que ser autodidata, tenho amigos igual a vc mas com a necessidade se toraram autodidatas…
eu nunca fiz curso de Java, sempre aprendendo sozinho, e cada dia aprendo mais pois trabalho com ERPs (Sistemas integrados de Gerenciamento).
retornar os dados não é complexo, tem muito exemplo aqui no forum, se vc tiver erros, ou alguma duvida especifica, se postar será respondido com certeza.

abs

V

Bom dia Rafael,

Olha eu aqui de novo, pois bem, como viu na minha VIEW tem 3 abas, na do cliente, ta rodando certinho, gravando no banco de tudo, rsrsrsrs, mas agora meu problema é outro, na aba serviço, fiz a mesma coisa criei as classes DAO e BEANS, e na ACTION, fiz exatamente igual, é claro, mudando o certo, só que o mais estranho, é quando eu preencho as JTextFiel, e aperto no gravar, no console local, aparece GRAVADO!, e no servidor, não aparece nada, vou colcar as classes e a action aqui.

BEANS

package model;

public class Servico {
	
	private String clientenome;
	private String descricao;
	public String getClientenome() {
		return clientenome;
	}
	public void setClientenome(String clientenome) {
		this.clientenome = clientenome;
	}
	public String getDescricao() {
		return descricao;
	}
	public void setDescricao(String descricao) {
		this.descricao = descricao;
	}
	
}

DAO

package dao;

import java.sql.Connection;
import java.sql.PreparedStatement;

import model.ConectaBanco;
import model.Servico;

public class ServicoDAO {

	private Connection connection;

	public ServicoDAO() {
		this.connection = new ConectaBanco().getConnection();
	}
	
	public void adicionaservico(Servico servico){
		
		Servico srv = new Servico();
		PreparedStatement stmt = null;
		String sql = "insert into servico (cliente, descricao) values (?,?)";
		
		try {
			stmt = ConectaBanco.getConnection().prepareStatement(sql);
			stmt.setString(1, srv.getClientenome());
			stmt.setString(2, srv.getDescricao());
			
			stmt.execute();
			stmt.close();
			
		} catch (Exception e) {
			// TODO: handle exception
		}
		
		
		
		
	}


}

Uma parte da ACTION

gravarBotaoServicoButton = new JButton();
							ServiçoJPanel.add(gravarBotaoServicoButton,
									new AnchorConstraint(856, 984, 977, 711,
											AnchorConstraint.ANCHOR_REL,
											AnchorConstraint.ANCHOR_REL,
											AnchorConstraint.ANCHOR_REL,
											AnchorConstraint.ANCHOR_REL));
							gravarBotaoServicoButton.setText("Gravar");
							gravarBotaoServicoButton
									.setPreferredSize(new java.awt.Dimension(
											190, 56));
							
							gravarBotaoServicoButton.addActionListener(new ActionListener() {
								
								@Override
								public void actionPerformed(ActionEvent e) {
									
									try {
										
										Servico srv = new Servico();
										
										srv.setClientenome(nomeClienteTextField.getText());
										srv.setDescricao(descricaoTextField.getText());
										
										ServicoDAO servico = new ServicoDAO();
										servico.adicionaservico(srv);
										
										
										System.out.println("Gravado!");
										
									} catch (Exception e2) {
										e2.printStackTrace();
									}
									
								}
							});

E cara, dessa vez eu procurei, pesquisei, mais realmente ta muito estranho.

Obrigado!

rafaelviny

sem um erro é dificil saber oq falar…

vou te ensinar a rastrear erro…

sai colocando System.out.println() em todo inicio e fim de metodo que o sistema entra na hora de inserir as infos.

e ve aonde ele para…

la estará o problema

V

Mais aparentimente o código está certo né? Eu to com uma duvida, que eu acho que talvez, seja, sera que não é o JPANEL? ou algo do tipo,??

rafaelviny

aparentemente sim!!.

mas deve ter dado algum erro, ou vc NÃO ESTA CHAMANDO O METODO INSERIR

V

o pior que não tem erro nenhum cara, e estou chamando o metodo certo da classe DAO no serviço.

rafaelviny

vc fez o rastreamento do erro?

tenho quase certeza que no seu actionPerfomed vc nao chamou o metodo inserir.

:arrow: rastreie o erro!

é uma coisa muito importante vc aprender…
neste exato momento estou rastreando um erro em um ERP com 300 MB de fontes (apenas fontes).

tenho certeza que vc conseguirá em seu projeto de 3 MB (total tamanho do projeto)

V

Fiz o teste que você me pediu, esta igual a classe do cliente.

rodando certinho

rafaelviny

passou por todos os metodos para inserir sem dar erro?

mostrou os System.out.println ao clicar no botão?

das 2 uma:

ou ta inserindo certo
ou nao ta chamando os metodos

V

mais se você ver, eu postei as minhas classes, e na ActionPerformed está igual ao da DAO, então não era para estar certo?

E outra, sera que não é problema no banco? Sei lá, estou fazendo tudo certinho, já não sei mais =\

rafaelviny

vc rastreou o erro?

passou por todos os metodos?

acredito que nao, senao teria achado o problema.

NÃO, o problema NÃO esta no BANCO

matrix_utfpr

Eu acho que para um profissional de TI ficar se gavando porque trabalha em empresa X ou Y não leva a nada.

O mais importante na nossa área é o network, amanhã você ganha a conta, quem vai te recomendar para alguma vaga de emprego ??

sendo que a empresa X que você tanto lhe defendia lhe cortou os pulsos,

pense bem antes de esculachar alguém que está começando na área, amanhã você pode precisar dele, assim como você precisou quando começou.

Abraço a Todos

rafaelviny

matrix_utfpr

um problema de hoje em dia é que as pessoas não tem a CAPACIDADE de interpretar as situações… por isso que EU não gosto de metaforas, pois ela exige que a outra pessoa seja capaz de interpretar…

por vc ter vindo aqui somente para postar isso eu o classifico neste grupo de pessoas, pois vc deve ter ficado magoado com o que disse sobre a incapacidade de pesquisar, então postou aqui…

quanto ao meu Network, anda muito bem obrigado!!

se nao tiver nada que acrecentar, mesmo que seja criticas sobre não pesquisar antes de postar, nao procurar no google, etc, NÃO POSTE!! TROLLS NÃO SAO BEM VISTOS

outra coisa, vc nunca participou do forum, e a primeira coisa que vc posta é essa merda!

sem comentarios

rafaelviny

o trajeto dos dados no modelo que te passei é o seguinte

Interface > coloque System.out.println no começo e no final do metodo inserir
BEANS > imprima todos os dados que estão nos atribustos dos metodos SETS
DAO > coloque s.o.p no começo do metodo, no final e dentro do

TRY{ } catch(Exception e) { e.printStrace(); // escreva algo assim dentro do catch, pois ele apresentará o erro }

Graziely

Tem gente que tem problema. E antes de falar QUALQUER coisa Rafael, saiba que trabalho na mesma empresa que voce e sei que voce nao é metade do que diz. E gostaria de saber que tipo de treinamento voce dá sendo que entrou a menos de um mes aqui.

V

Cara, fico fazendo e nada, vou copiar todo os meus codigos aqui, para ver se tem algum jeito de fazer isso funcionar, já fiz e refiz tudo, mas nada, :s

BEANS CLIENTE
package model;

public class Cliente {

	private String nome;
	private String sobreNome;
	private String cidade;
	private String endereco;
	private String email;

	public String getNome() {
		return nome;
	}

	public void setNome(String nome) {
		this.nome = nome;
	}

	public String getSobreNome() {
		return sobreNome;
	}

	public void setSobreNome(String sobreNome) {
		this.sobreNome = sobreNome;
	}

	public String getCidade() {
		return cidade;
	}

	public void setCidade(String cidade) {
		this.cidade = cidade;
	}

	public String getEndereco() {
		return endereco;
	}

	public void setEndereco(String endereco) {
		this.endereco = endereco;
	}

	public String getEmail() {
		return email;
	}

	public void setEmail(String email) {
		this.email = email;
	}

}
BEANS SERVIÇO
package model;

public class Servico {
	
	private String clientenome;
	private String descricao;
	public String getClientenome() {
		return clientenome;
	}
	public void setClientenome(String clientenome) {
		this.clientenome = clientenome;
	}
	public String getDescricao() {
		return descricao;
	}
	public void setDescricao(String descricao) {
		this.descricao = descricao;
	}
	
}
CONECTOR DO BANCO
package model;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;

public class ConectaBanco {

	public static Connection getConnection() {

		try {
			return DriverManager.getConnection("jdbc:mysql://localhost/tecinfo", "root", "adminadmin");

		} catch (SQLException e) {
			throw new RuntimeException(e);
		}

	}

}
CLIENTE DAO
package dao;

import java.sql.Connection;
import java.sql.PreparedStatement;

import model.Cliente;
import model.ConectaBanco;

public class ClienteDAO {

	private Connection connection;

	public ClienteDAO() {
		this.connection = new ConectaBanco().getConnection();
	}

	public void adiciona(Cliente cliente) {
		
		Cliente cli = (Cliente) cliente;
		PreparedStatement stmt = null;
		String sql = "insert into cliente (nome, sobreNome, cidade, endereco , email) values (?,?,?,?,?)";

		try {
			stmt = ConectaBanco.getConnection().prepareStatement(sql);
			stmt.setString(1, cli.getNome());
			stmt.setString(2, cli.getSobreNome());
			stmt.setString(3, cli.getCidade());
			stmt.setString(4, cli.getEndereco());
			stmt.setString(5, cli.getEmail());
			
			stmt.execute();			
			stmt.close();

		} catch (Exception e) {
			// TODO: handle exception
		}

	}
}
SERVIÇO DAO
package dao;

import java.sql.Connection;
import java.sql.PreparedStatement;

import model.ConectaBanco;
import model.Servico;

public class ServicoDAO {

	private Connection connection;

	public ServicoDAO() {
		this.connection = new ConectaBanco().getConnection();
	}
	
	public void adiciona(Servico servico){
		
		Servico srv = new Servico();
		PreparedStatement stmt = null;
		String sql = "insert into servico (cliente, descricao) values (?,?)";
		
		try {
			stmt = ConectaBanco.getConnection().prepareStatement(sql);
			stmt.setString(1, srv.getClientenome());
			stmt.setString(2, srv.getDescricao());
			
			stmt.execute();
			stmt.close();
			
		} catch (Exception e) {
			// TODO: handle exception
		}
		
		
		
		
	}


}
VIEW
package view;

import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

import javax.swing.DefaultComboBoxModel;
import javax.swing.JButton;
import javax.swing.JCheckBox;
import javax.swing.JLabel;
import javax.swing.JList;
import javax.swing.JPanel;
import javax.swing.JScrollPane;
import javax.swing.JTabbedPane;
import javax.swing.JTextField;
import javax.swing.ListModel;
import javax.swing.SwingUtilities;

import model.Cliente;
import model.Servico;

import com.cloudgarden.layout.AnchorConstraint;
import com.cloudgarden.layout.AnchorLayout;

import dao.ClienteDAO;
import dao.ServicoDAO;


public class TecInfoView extends javax.swing.JFrame {

	private JPanel ClienteJPanel;
	private JTextField nomeTextField;
	private JTextField nomePesquisaTextField;
	private JLabel clientePesquisaJLabel;
	private JButton pesquisarButton;
	private JCheckBox servicoCheckBox;
	private JCheckBox clienteCheckBox;
	private JPanel PesquisaJPanel;
	private JTextField enderecoTextField;
	private JTabbedPane jTabbedPane;
	private JLabel descricaoLabel;
	private JLabel clienteLabel;
	private JButton gravarServicoButton;
	private JTextField descricaoTextField;
	private JTextField nomeClienteTextField;
	private JScrollPane jScrollPane1;
	private JList jList;
	private JPanel ServiçoJPanel;
	private JButton botaoGravarjButton;
	private JTextField emailTextField;
	private JLabel emailLabel;
	private JTextField cidadeTextField;
	private JLabel cidadeLabel;
	private JTextField sobreNomeTextField;
	private JLabel sobreNomeLabel;
	private JLabel enderecoLabel;
	private JLabel nomeLabel;

	public static void main(String[] args) {
		SwingUtilities.invokeLater(new Runnable() {
			public void run() {
				TecInfoView inst = new TecInfoView();
				inst.setLocationRelativeTo(null);
				inst.setVisible(true);
			}
		});
	}

	public TecInfoView() {
		super();
		initGUI();
	}

	private void initGUI() {
		try {
			{
				this.setName("");
				AnchorLayout thisLayout = new AnchorLayout();
				getContentPane().setLayout(thisLayout);
				this.setTitle("TECINFO LTDA - Sistema Operacional");
				{

					jTabbedPane = new JTabbedPane();
					getContentPane().add(
							jTabbedPane,
							new AnchorConstraint(12, 984, 977, 9,
									AnchorConstraint.ANCHOR_REL,
									AnchorConstraint.ANCHOR_REL,
									AnchorConstraint.ANCHOR_REL,
									AnchorConstraint.ANCHOR_REL));
					jTabbedPane.setPreferredSize(new java.awt.Dimension(701,
							490));
					
					{

						ServiçoJPanel = new JPanel();
						jTabbedPane
								.addTab("Serviço", null, ServiçoJPanel, null);
						AnchorLayout servicoPanelLayout = new AnchorLayout();
						ServiçoJPanel.setLayout(servicoPanelLayout);
						ServiçoJPanel.setPreferredSize(new java.awt.Dimension(
								261, 186));
						ServiçoJPanel.setBackground(new java.awt.Color(255,
								255, 255));
						
						{

							gravarServicoButton = new JButton();
							ServiçoJPanel.add(gravarServicoButton, new AnchorConstraint(821, 987, 957, 806, AnchorConstraint.ANCHOR_REL, AnchorConstraint.ANCHOR_REL, AnchorConstraint.ANCHOR_REL, AnchorConstraint.ANCHOR_REL));
							gravarServicoButton.setText("Gravar");
							gravarServicoButton.setPreferredSize(new java.awt.Dimension(149, 68));
							gravarServicoButton.addActionListener(new ActionListener() {
								
								@Override
								public void actionPerformed(ActionEvent e) {

								try {
									Servico srv = new Servico();
									
									srv.setClientenome(nomePesquisaTextField.getText());
									srv.setDescricao(descricaoTextField.getText());
									
									ServicoDAO servico = new ServicoDAO();
									servico.adiciona(srv);
									
									System.out.println("Gravado!");
									
									
								} catch (Exception e2) {
									e2.printStackTrace();
								}
									
									
								}
							});
						}
						{
							
							descricaoTextField = new JTextField();
							ServiçoJPanel.add(descricaoTextField, new AnchorConstraint(307, 479, 349, 9, AnchorConstraint.ANCHOR_REL, AnchorConstraint.ANCHOR_REL, AnchorConstraint.ANCHOR_REL, AnchorConstraint.ANCHOR_REL));
							descricaoTextField.setPreferredSize(new java.awt.Dimension(388, 21));
						}
						{
							nomeClienteTextField = new JTextField();
							ServiçoJPanel.add(nomeClienteTextField, new AnchorConstraint(128, 479, 170, 9, AnchorConstraint.ANCHOR_REL, AnchorConstraint.ANCHOR_REL, AnchorConstraint.ANCHOR_REL, AnchorConstraint.ANCHOR_REL));
							nomeClienteTextField.setPreferredSize(new java.awt.Dimension(388, 21));
						}
						{
							
							descricaoLabel = new JLabel();
							ServiçoJPanel.add(descricaoLabel,
									new AnchorConstraint(240, 223, 268, 9,
											AnchorConstraint.ANCHOR_REL,
											AnchorConstraint.ANCHOR_REL,
											AnchorConstraint.ANCHOR_REL,
											AnchorConstraint.ANCHOR_REL));
							descricaoLabel.setText("Descrição");
							descricaoLabel
									.setPreferredSize(new java.awt.Dimension(
											149, 13));
						}
						{
							
							clienteLabel = new JLabel();
							ServiçoJPanel.add(clienteLabel,
									new AnchorConstraint(76, 104, 104, 9,
											AnchorConstraint.ANCHOR_REL,
											AnchorConstraint.ANCHOR_REL,
											AnchorConstraint.ANCHOR_REL,
											AnchorConstraint.ANCHOR_REL));
							clienteLabel.setText("Cliente");
							clienteLabel
									.setPreferredSize(new java.awt.Dimension(
											66, 13));
							
						}
					}
					{
						PesquisaJPanel = new JPanel();
						AnchorLayout PesquisaJPanelLayout = new AnchorLayout();
						PesquisaJPanel.setLayout(PesquisaJPanelLayout);
						jTabbedPane.addTab("Pesquisa", null, PesquisaJPanel,
								null);
						PesquisaJPanel.setBackground(new java.awt.Color(255,
								255, 255));
						{
							jScrollPane1 = new JScrollPane();
							PesquisaJPanel.add(jScrollPane1,
									new AnchorConstraint(273, 982, 841, 36,
											AnchorConstraint.ANCHOR_REL,
											AnchorConstraint.ANCHOR_REL,
											AnchorConstraint.ANCHOR_REL,
											AnchorConstraint.ANCHOR_REL));
							jScrollPane1
									.setPreferredSize(new java.awt.Dimension(
											780, 285));
							
							{
								ListModel jListModel = new DefaultComboBoxModel(
										new String[] { "Item One", "Item Two" });
								jList = new JList();
								jScrollPane1.setViewportView(jList);
								jList.setModel(jListModel);
								jList.setPreferredSize(new java.awt.Dimension(
										780, 285));
							}
							
						}
						{
							nomePesquisaTextField = new JTextField();
							PesquisaJPanel.add(nomePesquisaTextField,
									new AnchorConstraint(132, 516, 174, 26,
											AnchorConstraint.ANCHOR_REL,
											AnchorConstraint.ANCHOR_REL,
											AnchorConstraint.ANCHOR_REL,
											AnchorConstraint.ANCHOR_REL));
							nomePesquisaTextField
									.setPreferredSize(new java.awt.Dimension(
											405, 21));
						}
						{
							clientePesquisaJLabel = new JLabel();
							PesquisaJPanel.add(clientePesquisaJLabel, new AnchorConstraint(
									92, 108, 120, 26,
									AnchorConstraint.ANCHOR_REL,
									AnchorConstraint.ANCHOR_REL,
									AnchorConstraint.ANCHOR_REL,
									AnchorConstraint.ANCHOR_REL));
							clientePesquisaJLabel.setText("Cliente");
							clientePesquisaJLabel.setPreferredSize(new java.awt.Dimension(68,
									14));
							
						}
						{
							pesquisarButton = new JButton();
							PesquisaJPanel.add(pesquisarButton,
									new AnchorConstraint(857, 987, 979, 713,
											AnchorConstraint.ANCHOR_REL,
											AnchorConstraint.ANCHOR_REL,
											AnchorConstraint.ANCHOR_REL,
											AnchorConstraint.ANCHOR_REL));
							pesquisarButton.setText("Pesquisar");
							pesquisarButton
									.setPreferredSize(new java.awt.Dimension(
											226, 61));
							}
						{
							servicoCheckBox = new JCheckBox();
							PesquisaJPanel.add(servicoCheckBox,
									new AnchorConstraint(134, 700, 170, 617,
											AnchorConstraint.ANCHOR_REL,
											AnchorConstraint.ANCHOR_REL,
											AnchorConstraint.ANCHOR_REL,
											AnchorConstraint.ANCHOR_REL));
							servicoCheckBox.setText("Serviço");
							servicoCheckBox
									.setPreferredSize(new java.awt.Dimension(
											68, 18));
							servicoCheckBox.setBackground(new java.awt.Color(
									255, 255, 255));
							}
						{
							clienteCheckBox = new JCheckBox();
							PesquisaJPanel.add(clienteCheckBox,
									new AnchorConstraint(84, 701, 120, 618,
											AnchorConstraint.ANCHOR_REL,
											AnchorConstraint.ANCHOR_REL,
											AnchorConstraint.ANCHOR_REL,
											AnchorConstraint.ANCHOR_REL));
							clienteCheckBox.setText("Cliente");
							clienteCheckBox
									.setPreferredSize(new java.awt.Dimension(
											68, 18));
							clienteCheckBox.setBackground(new java.awt.Color(
									255, 255, 255));
							}
						this.setSize(859, 574);
							}
					{
						ClienteJPanel = new JPanel();
						jTabbedPane.addTab("Cliente", null, ClienteJPanel, null);
						AnchorLayout clientePanelLayout = new AnchorLayout();
						ClienteJPanel.setLayout(clientePanelLayout);
						ClienteJPanel.setPreferredSize(new java.awt.Dimension(
								197, 217));
						ClienteJPanel.setBackground(new java.awt.Color(255,
								255, 255));
						{
							botaoGravarjButton = new JButton();
							ClienteJPanel.add(botaoGravarjButton,
									new AnchorConstraint(856, 984, 977, 710,
											AnchorConstraint.ANCHOR_REL,
											AnchorConstraint.ANCHOR_REL,
											AnchorConstraint.ANCHOR_REL,
											AnchorConstraint.ANCHOR_REL));
							botaoGravarjButton.setText("Gravar");
							
							botaoGravarjButton
							.setPreferredSize(new java.awt.Dimension(
									191, 56));
							botaoGravarjButton
							.addActionListener(new ActionListener() {
								
								@Override
								public void actionPerformed(
										ActionEvent e) {
									try {
										
										Cliente cli = new Cliente();
										
										cli.setNome(nomeTextField.getText());
										cli.setSobreNome(sobreNomeTextField.getText());
										cli.setCidade(cidadeTextField.getText());
										cli.setEndereco(enderecoTextField.getText());
										cli.setEmail(emailTextField.getText());
										
										ClienteDAO cliente = new ClienteDAO();
										cliente.adiciona(cli);
										
										System.out.println("Gravado!");
										
									} catch (Exception e2) {
										e2.printStackTrace();
									}
									
								}
							});
							
						
							
						}
						
						{
							emailTextField = new JTextField();
							ClienteJPanel.add(emailTextField,
									new AnchorConstraint(649, 990, 705, 48,
											AnchorConstraint.ANCHOR_REL,
											AnchorConstraint.ANCHOR_REL,
											AnchorConstraint.ANCHOR_REL,
											AnchorConstraint.ANCHOR_REL));
							emailTextField
							.setPreferredSize(new java.awt.Dimension(
									656, 26));
						}
						{
							emailLabel = new JLabel();
							ClienteJPanel.add(emailLabel, new AnchorConstraint(
									585, 150, 615, 48,
									AnchorConstraint.ANCHOR_REL,
									AnchorConstraint.ANCHOR_REL,
									AnchorConstraint.ANCHOR_REL,
									AnchorConstraint.ANCHOR_REL));
							emailLabel.setText("E-mail");
							emailLabel.setPreferredSize(new java.awt.Dimension(
									71, 14));
						}
						{
							cidadeTextField = new JTextField();
							ClienteJPanel.add(cidadeTextField,
									new AnchorConstraint(307, 532, 356, 48,
											AnchorConstraint.ANCHOR_REL,
											AnchorConstraint.ANCHOR_REL,
											AnchorConstraint.ANCHOR_REL,
											AnchorConstraint.ANCHOR_REL));
							cidadeTextField
							.setPreferredSize(new java.awt.Dimension(
									337, 23));
						}
						{
							cidadeLabel = new JLabel();
							ClienteJPanel.add(cidadeLabel,
									new AnchorConstraint(251, 153, 281, 48,
											AnchorConstraint.ANCHOR_REL,
											AnchorConstraint.ANCHOR_REL,
											AnchorConstraint.ANCHOR_REL,
											AnchorConstraint.ANCHOR_REL));
							cidadeLabel.setText("Cidade");
							cidadeLabel
							.setPreferredSize(new java.awt.Dimension(
									73, 14));
						}
						{
							sobreNomeTextField = new JTextField();
							ClienteJPanel.add(sobreNomeTextField,
									new AnchorConstraint(134, 983, 184, 532,
											AnchorConstraint.ANCHOR_REL,
											AnchorConstraint.ANCHOR_REL,
											AnchorConstraint.ANCHOR_REL,
											AnchorConstraint.ANCHOR_REL));
							sobreNomeTextField
							.setPreferredSize(new java.awt.Dimension(
									314, 24));
						}
						{
							sobreNomeLabel = new JLabel();
							ClienteJPanel.add(sobreNomeLabel,
									new AnchorConstraint(80, 650, 110, 532,
											AnchorConstraint.ANCHOR_REL,
											AnchorConstraint.ANCHOR_REL,
											AnchorConstraint.ANCHOR_REL,
											AnchorConstraint.ANCHOR_REL));
							sobreNomeLabel.setText("Sobrenome");
							sobreNomeLabel
							.setPreferredSize(new java.awt.Dimension(
									82, 14));
						}
						{
							enderecoLabel = new JLabel();
							ClienteJPanel.add(enderecoLabel,
									new AnchorConstraint(406, 206, 451, 48,
											AnchorConstraint.ANCHOR_REL,
											AnchorConstraint.ANCHOR_REL,
											AnchorConstraint.ANCHOR_REL,
											AnchorConstraint.ANCHOR_REL));
							enderecoLabel.setText("Endereço");
							enderecoLabel
							.setPreferredSize(new java.awt.Dimension(
									110, 21));
						}
						{
							nomeTextField = new JTextField();
							ClienteJPanel.add(nomeTextField,
									new AnchorConstraint(134, 493, 184, 48,
											AnchorConstraint.ANCHOR_REL,
											AnchorConstraint.ANCHOR_REL,
											AnchorConstraint.ANCHOR_REL,
											AnchorConstraint.ANCHOR_REL));
							nomeTextField
							.setPreferredSize(new java.awt.Dimension(
									314, 24));
						}
						{
							nomeLabel = new JLabel();
							ClienteJPanel.add(nomeLabel, new AnchorConstraint(
									72, 118, 119, 48,
									AnchorConstraint.ANCHOR_REL,
									AnchorConstraint.ANCHOR_REL,
									AnchorConstraint.ANCHOR_REL,
									AnchorConstraint.ANCHOR_REL));
							nomeLabel.setText("Nome");
							nomeLabel.setPreferredSize(new java.awt.Dimension(
									49, 22));
						}
						{
							enderecoTextField = new JTextField();
							ClienteJPanel.add(enderecoTextField,
									new AnchorConstraint(477, 532, 526, 48,
											AnchorConstraint.ANCHOR_REL,
											AnchorConstraint.ANCHOR_REL,
											AnchorConstraint.ANCHOR_REL,
											AnchorConstraint.ANCHOR_REL));
							enderecoTextField
							.setPreferredSize(new java.awt.Dimension(
									337, 23));
						}
					}
					
				}

			}
		}

		catch (Exception e) {
			e.printStackTrace();
		}
	}
}

obrigado e espero pela ajuda.

rafaelviny

Graziely criou uma conta so para Trollar? não vou comentar

Graziely

:smiley:

rafaelviny

vc tem que depurar todo o caminho que o seu sistema percorre…

ver em que metodo está entrando e ai vc vai ver o erro…
já te expliquei como vc deve proceder, agora so executar e ver aonde está o problema

V

Cara, eu já fiz, isso, se você colocar a compilar vai ver também que esta muito estranho isso.

V

Eae, cara o metodo que esta entrando na classe DAO para adicionar eu estou chamando ele corretamente, se você puder compilar ai e me ajudar, porque agora estou trancado nessa parte, :cry:

V

Consegui, era pau no banco. rsrsrsrsrsrsrs.

Abraços, e muito obrigado Rafael, vou postando ele de acordo com o meu processo.

Criado 4 de maio de 2011
Ultima resposta 11 de mai. de 2011
Respostas 50
Participantes 7