Olá a todos.
Não tenho muita experiencia com Java e me deparei com um problema num simples projeto que estou fazendo pra uma amiga.
Ano passado na faculdade fiz um trabalho e estava acompanhando ele, mas por algum motivo (mesmo estando igual) está dando um erro na hora de inserir os dados que eu preencho nos campos textfields. Pelo que vi, é algum problema de conexão, mas não sei como identificar, visto que está tudo certo.
Estou usando ide NetBeans e banco de dados SQL Server.
Aqui o código da ação do botão “incluir”:
btIncluir.addActionListener(new ActionListener(){
@Override
public void actionPerformed (ActionEvent e){
Conexao conecta = new Conexao();
conecta.conecta();
int retorno = conecta.inserir("insert into Cliente "
+ "(idCliente, nome, facebook, endereco, bairro, cep)"
+ "values ('"
+ tfCodigo.getText()+"','"
+ tfNome.getText()+"','"
+ tfFacebook.getText()+"','"
+ tfEndereco.getText()+"','"
+ tfBairro.getText()+"','"
+ tfCep.getText()+ "');");
if (retorno != -1){
JOptionPane.showMessageDialog(null,
"Incluido com Sucesso!", "Informação",JOptionPane.INFORMATION_MESSAGE);
}
conecta.desconecta();
}
});
Aqui o código de conexão, feito junto com meu professor na sala de aula:
package anamarcadores;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
public class Conexao {
public Connection c;
public boolean conecta(){
boolean isConected=false;
try{
String url = "jdbc:sqlserver://Julio\\SQLEXPRESS:1433;databaseName=Marcador"+
";user=JulioCesar" + ";password=123456;";
Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
this.c = DriverManager.getConnection(url);
isConected=true;
}
catch(ClassNotFoundException | SQLException ex){
System.out.println(ex.getMessage());
isConected=false;
}
return isConected;
}
public boolean desconecta(){
try{
c.close();
return true;
}catch(SQLException ex){
System.out.println(ex.getMessage());
return false;
}
}
public int inserir(String cmd){
Statement st;
int resp =-1;
try{
st = c.createStatement();
resp = st.executeUpdate(cmd);
}catch(SQLException e){
System.out.println(e.getMessage());
}
return resp;
}
public ResultSet consultar(String query) {
Statement st;
ResultSet rs;
try {
st = this.c.createStatement();
rs = st.executeQuery(query);
return rs;
} catch (SQLException e) {
e.printStackTrace();
return null;
}
}
}
E aqui o erro que ocorre quando eu preencho os campos e clico em “Incluir”:
Exception in thread "AWT-EventQueue-0" java.lang.RuntimeException: Uncompilable source code - Erroneous tree type: AnaMarcadores.Conexao
at AnaMarcadores.NovoCliente$2.actionPerformed(NovoCliente.java:121)
at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:2022)
at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2346)
at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:402)
at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:259)
at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:252)
at java.awt.Component.processMouseEvent(Component.java:6525)
at javax.swing.JComponent.processMouseEvent(JComponent.java:3324)
at java.awt.Component.processEvent(Component.java:6290)
at java.awt.Container.processEvent(Container.java:2234)
at java.awt.Component.dispatchEventImpl(Component.java:4881)
at java.awt.Container.dispatchEventImpl(Container.java:2292)
at java.awt.Component.dispatchEvent(Component.java:4703)
at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4898)
at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4533)
at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4462)
at java.awt.Container.dispatchEventImpl(Container.java:2278)
at java.awt.Window.dispatchEventImpl(Window.java:2750)
at java.awt.Component.dispatchEvent(Component.java:4703)
at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:751)
at java.awt.EventQueue.access$500(EventQueue.java:97)
at java.awt.EventQueue$3.run(EventQueue.java:702)
at java.awt.EventQueue$3.run(EventQueue.java:696)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:75)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:86)
at java.awt.EventQueue$4.run(EventQueue.java:724)
at java.awt.EventQueue$4.run(EventQueue.java:722)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:75)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:721)
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:201)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:116)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:105)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:93)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:82)