Java utilizar if

1 resposta
I

Pessoal, este codigo é para emprestar um bem uma unica vez mais não consigo fazer isso ele empresta o mesmo bem varias vezes, por favor me ajudem...[code]public class BemDAO {
private Connection connection;
int id;
String nome;
int status;
private JTable tabela;
private DefaultTableModel modelo = new DefaultTableModel();


public BemDAO(){
this.connection = new ConnectionFactory().getConnection();
}

public void adiciona(Bem bem){

String sql = "INSERT INTO bem(nome) VALUES(?)";
// String sqla= "UPDATE BEM WHERE id ="+bem.getId()+" SET status=0";
try {
PreparedStatement stmt = null;


stmt = connection.prepareStatement(sql);
//stmt.setInt(1, bem.getId());
stmt.setString(1, bem.getNome());

stmt.execute();
stmt.close();

} catch (SQLException u) {
JOptionPane.showMessageDialog(null, u);
}
}

public void altera (Bem bem) {

String sql = "update bem set nome=? where Id=?";
try {
PreparedStatement stmt = null;

stmt = connection.prepareStatement(sql);

stmt.setString(1, bem.getNome());
stmt.setInt(2, bem.getId());

stmt.execute();
stmt.close();

} catch (SQLException u) {
JOptionPane.showMessageDialog(null, u);
}
}

public String excluir(Bem bem) {
String sql = "delete from bem where id=?";

try {
PreparedStatement stmt = null;

stmt = connection.prepareStatement(sql);
//stmt.setString(2, bem.getNome());
stmt.setInt(1, bem.getId());


stmt.execute();
stmt.close();

} catch (SQLException u) {
JOptionPane.showMessageDialog(null, u);
}
return null;

}

/**
*
*/
public ResultSet listar() {
String sql = "select id, nome from bem";
ResultSet rs=null;
try {
PreparedStatement stmt = null;

stmt = connection.prepareStatement(sql);
//stmt.setString(2, bem.getNome());
//stmt.setInt(1, bem.getId());


rs = stmt.executeQuery(sql);

} catch (SQLException u) {
throw new RuntimeException(u);
}
return rs;


}


public ResultSet listarEmp() {
String sql = "select idEmp, nomeCliente, idBem, dataEmprestimo, Data Devolucao from Emprestimo";

ResultSet rs=null;
try {
PreparedStatement stmt = null;

stmt = connection.prepareStatement(sql);
//stmt.setString(2, bem.getNome());
//stmt.setInt(1, bem.getId());


rs = stmt.executeQuery(sql);

} catch (SQLException u) {
throw new RuntimeException(u);
}
return rs;


}

public void Devolver (Bem bem){
String sql = "DELETE FROM EMPRESTIMO WHERE idBem="+bem.getId()+"";
String sqla = "UPDATE BEM SET status=0 WHERE id="+bem.getId()+"";
try {
PreparedStatement stmt = connection.prepareStatement(sql);
PreparedStatement stmta=connection.prepareStatement(sqla);
stmt.execute();
stmta.execute();
stmt.close();
stmta.close();

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

}

// aqui é a parte grafica
public class JCadastro extends javax.swing.JFrame {

/**
* Creates new form JCadastro
*/
public JCadastro() {
initComponents();
}

private void jButton2ActionPerformed(java.awt.event.ActionEvent evt) {
// TODO add your handling code here:

Emprestimo t = new Emprestimo();
Bem b = new Bem();
t.setNomeCliente(jTextField3.getText());
t.setIdBem(Integer.parseInt(jTextField4.getText()));
t.setDataEmprestimo(jTextField5.getText());
t.setDataDevolucao(jTextField1.getText());

// fazendo a validação dos dados
if ((jTextField3.getText().isEmpty())) {
JOptionPane.showMessageDialog(null, "Os campos não podem retornar vazios");
}
if((jTextField4.getText().equals(b.getId()))){
if((b.getId()==1)){
JOptionPane.showMessageDialog(null, "O bem já foi emprestado!");
}
}
else {
// instanciando a classe EmprestimoDAO do pacote dao e criando seu objeto dao
EmprestimoDAO dao = new EmprestimoDAO();
dao.adiciona(t);
JOptionPane.showMessageDialog(null, "O bem foi emprestado com sucesso! ");
}

// apaga os dados preenchidos nos campos de texto

jTextField3.setText("");
jTextField4.setText("");
jTextField5.setText("");
jTextField1.setText("");


}

1 Resposta

TEC.ER

Nao conseguir entender seu codigo.

Por que esse b entre colchetes : ? [b]if((jTextField4.getText().equals(b.getId())))

Criado 5 de novembro de 2015
Ultima resposta 27 de mar. de 2016
Respostas 1
Participantes 2