Sou iniciante em java estou começando com jdbc
Tenho uma classe Cidade DAO com os metodos delete insert update
e uma outra classe com o menu que o usuario entra com a opçao de deletar por exemplo ,
o programa pede para ele escrever o nome da Cidade se o nome escrito estiver correto ele deleta no banco
caso ao contrario se o nome digitado no estiver no banco ele tambem aparece como se estivesse deletado , gostaria de saber como faço para retornar uma mensagem caso nao contenha o dado descrito, ele retorna uma mensagem por exemplo dado ja foi deletado ou dado nao consta no sistema
segue o e a classe abaixo
package br.com.people.DAO;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.List;
import br.com.peole.entidade.Cidade;
public class CidadeDAO {
private Connection conexao;//atributo para conexao
public CidadeDAO(){//contrutor padrao
}
public boolean insere (Cidade cidade){
conexao = FabricaConexao.getConnection();//chamando a conexao
PreparedStatement ps=null;
StringBuilder sql = new StringBuilder();//serve para concaternar Strings
sql.append("insert into cidade(nome) values");//comando para o banco
sql.append(" (?)");
try {//tratamento de exeçao
ps = conexao.prepareStatement(sql.toString());
ps.setString(1,cidade.getNome());//com o ps eu seto todos dados para inserir no banco
ps.execute();
} catch (SQLException e) {
System.out.println("Erro ao criar Statenmente para criar cidade");
e.printStackTrace();
return false;
}finally{// sempre por finaly qualquer que aconteça ele semopre fecha a conexao cai na intrevista
try {
ps.close();
conexao.close();
} catch (SQLException e) {
System.out.println("Erro ao Fechar");
e.printStackTrace();
return false;
}
}
System.out.println("Dados inseridos com sucesso");
return true;
}
//delete********
public void delete (Cidade cidade){// (Cidade cidade) parametro
conexao= FabricaConexao.getConnection();
PreparedStatement ps = null;
StringBuffer sql = new StringBuffer();
sql.append("delete from cidade where nome =? ");
try {//tratamento de exeçao
ps = conexao.prepareStatement(sql.toString());
ps.setString(1,cidade.getNome());//com o ps eu seto todos dados para inserir no banco
ps.execute();
} catch (SQLException e) {
System.out.println("Erro ao criar Statenmente para criar cidade");
e.printStackTrace();
}finally{// sempre por finaly qualquer que aconteça ele semopre fecha a conexao cai na intrevista
try {
ps.close();
conexao.close();
} catch (SQLException e) {
System.out.println("Erro ao Fechar");
e.printStackTrace();
}
}
System.out.println("Dados deletados com sucesso");
}
//******************************** seleciona*****************************
public Cidade seleciona(Integer id){// (Cidade cidade) parametro
conexao= FabricaConexao.getConnection();
PreparedStatement ps = null;
ResultSet rs = null;
StringBuffer sql = new StringBuffer();
sql.append("select nome,id from cidade where id=? ");
Cidade cid = new Cidade();
try {//tratamento de exeçao
ps = conexao.prepareStatement(sql.toString());
ps.setInt(1,id);//com o ps eu seto todos dados para inserir no banco
rs= ps.executeQuery();
while(rs.next()){
cid.setId(rs.getInt("id"));
cid.setNome(rs.getString("nome"));
}
} catch (SQLException e) {
System.out.println("Erro ao criar Statenmente para criar cidade");
e.printStackTrace();
}finally{// sempre por finaly qualquer que aconteça ele semopre fecha a conexao cai na intrevista
try {
rs.close();
ps.close();
conexao.close();
} catch (SQLException e) {
System.out.println("Erro ao Fechar");
e.printStackTrace();
}
}
System.out.println("Dados selecionados com sucesso");
return cid;
}
//************************* seleciona todos*********************
public List <Cidade> selecionaTodos(){
conexao= FabricaConexao.getConnection();
PreparedStatement ps = null;
ResultSet rs = null;
List<Cidade> resultList = new ArrayList<Cidade>();
StringBuffer sql = new StringBuffer();
sql.append("select nome,id from cidade ");
try {//tratamento de exeçao
ps = conexao.prepareStatement(sql.toString());
//ps.setInt(1,id);//com o ps eu seto todos dados para inserir no banco
rs= ps.executeQuery();
while(rs.next()){
Cidade cid = new Cidade();// colocando essa linha faz com cid percorra o banco
//trazendo as informaçoes
cid.setId(rs.getInt("id"));
cid.setNome(rs.getString("nome"));
resultList.add(cid);
}
} catch (SQLException e) {
System.out.println("Erro ao criar Statenmente para criar cidade");
e.printStackTrace();
}finally{// sempre por finaly qualquer que aconteça ele semopre fecha a conexao cai na intrevista
try {
rs.close();
ps.close();
conexao.close();
} catch (SQLException e) {
System.out.println("Erro ao Fechar");
e.printStackTrace();
}
}
//System.out.println("Dados selecionados com sucesso");
return resultList;
}
//****************************** ATUALIZA*************************
public boolean atualiza (Cidade cidade){
conexao = FabricaConexao.getConnection();//chamando a conexao
PreparedStatement ps=null;
StringBuilder sql = new StringBuilder();//serve para concaternar Strings
sql.append("update cidade set nome=?where id=1");//comando para o banco
try {//tratamento de exeçao
ps = conexao.prepareStatement(sql.toString());
ps.setString(1,cidade.getNome());//com o ps eu seto todos dados para inserir no banco
ps.execute();
} catch (SQLException e) {
System.out.println("Erro ao criar Statenmente para criar cidade");
e.printStackTrace();
return false;
}finally{// sempre por finaly qualquer que aconteça ele semopre fecha a conexao cai na intrevista
try {
ps.close();
conexao.close();
} catch (SQLException e) {
System.out.println("Erro ao Fechar");
e.printStackTrace();
return false;
}
}
System.out.println("Dados atualizados com sucesso ");
return true;
}
}
a classe com o metodo delete
package br.com.people.menu;
import java.util.ArrayList;
import java.util.List;
import java.util.Scanner;
import br.com.peole.entidade.Cidade;
import br.com.people.DAO.CidadeDAO;
public class DeleteMenu {
String res;
String del ;
int id = 0;
public void delete(){
Scanner input = new Scanner (System.in);
CidadeDAO C = new CidadeDAO();
Cidade cidade = new Cidade();
{
List<Cidade> cid = new ArrayList<Cidade>();
cid = C.selecionaTodos();
for(int i=0;i<cid.size();i++){
Cidade c1 = cid.get(i);
System.out.println("Cidade :"+c1.getNome());
System.out.println();
System.out.println("Posiçao :"+c1.getId());
}
System.out.println("Digite o nome da cidade a deletar") ;
del =input.next();
cidade.setNome(del);
C.seleciona(id);
cidade.setId(id);
C.delete(cidade);
}
}
}