Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

augustinoi

foreign key em pstm

Recommended Posts

Ola, preciso implementar um código de uma foreign key como no modelo 

 

package Persistencia;

import Entidades.TipoDeComportamento;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.List;

/**
 *
 * @author Augusto
 */
public class TipoDeComportamentoDAO extends Conexao implements InterFaceDAO<TipoDeComportamento> {

    @Override
    public void salvar(TipoDeComportamento tipodecomportamento) {

        String sqlInsert = "INSERT INTO TIPODECOMPORTAMENTO ( "
                + "CODIGO, "
                + "DESCRICAO "
                + ") VALUES (?,?);";

        if (pesquisarSeExisteOTipoDeComportamento(tipodecomportamento)) {

            System.out.print("Já existe um Tipo de Comportamento cadastrado com este Código no Banco de Dados. ");

            System.out.println("( " + tipodecomportamento.getCodigotipo() + " | " + buscarPorID(tipodecomportamento.getCodigotipo()).getDescricao() + " )");

        } else {

            try {
                pstm = abrirConexaoComBD().prepareStatement(sqlInsert);

                pstm.setInt(1, tipodecomportamento.getCodigotipo());
                pstm.setString(2, tipodecomportamento.getDescricao());

                pstm.execute();
                pstm.close();

                fecharConexaocomBD();

            } catch (SQLException e) {

                e.printStackTrace();
            }
        }

    }

    @Override
    public void deletar(TipoDeComportamento tipodecomportamento) {
 String sqlDeletar = "DELETE FROM TIPODECOMPORTAMENTO WHERE CODIGO = ?";

        try {

            pstm = abrirConexaoComBD().prepareStatement(sqlDeletar);
            pstm.setInt(1, tipodecomportamento.getCodigotipo());

            pstm.execute();
            pstm.close();
            fecharConexaocomBD();

        } catch (SQLException e) {

            e.printStackTrace();
        }
    }

    @Override
    public void update(TipoDeComportamento tipodecomportamento) {

        String sql = "UPDATE TIPODECOMPORTAMENTO SET DESCRICAO=? where CODIGO=?";

        try {

            pstm = abrirConexaoComBD().prepareStatement(sql);
            pstm.setString(1, tipodecomportamento.getDescricao());
            pstm.setInt(2, tipodecomportamento.getCodigotipo());
            pstm.execute();
            pstm.close();
            fecharConexaocomBD();

        } catch (SQLException e) {

            e.printStackTrace();
        }

    }

    @Override
    public TipoDeComportamento buscarPorID(Integer id) {

        String sqlPesquisarPorId = "SELECT * FROM TIPODECOMPORTAMENTO WHERE CODIGO = ?";
        TipoDeComportamento tipodecomportamento = new TipoDeComportamento();
        try {

            pstm = abrirConexaoComBD().prepareStatement(sqlPesquisarPorId);
            pstm.setInt(1, id);
            ResultSet list = pstm.executeQuery();
            while (list.next()) {

                tipodecomportamento.setCodigotipo(list.getInt("CODIGO"));
                tipodecomportamento.setDescricao(list.getString("DESCRICAO"));

            }

            pstm.close();
            list.close();
            fecharConexaocomBD();

        } catch (SQLException e) {

            e.printStackTrace();
        }
        return tipodecomportamento;
    }

    @Override
    public List<TipoDeComportamento> listarTodos() {

        String sql = "SELECT * FROM TIPODECOMPORTAMENTO";

        List<TipoDeComportamento> listadostiposdecomportamentos = new ArrayList<TipoDeComportamento>();

        try {

            pstm = abrirConexaoComBD().prepareStatement(sql);

            ResultSet lista = pstm.executeQuery();

            while (lista.next()) {

                TipoDeComportamento tipodecomportamento = new TipoDeComportamento();

                tipodecomportamento.setCodigotipo(lista.getInt("CODIGO"));

                tipodecomportamento.setDescricao(lista.getString("DESCRICAO"));

                listadostiposdecomportamentos.add(tipodecomportamento);

            }

            pstm.close();
            lista.close();
            fecharConexaocomBD();

        } catch (SQLException e) {

            e.printStackTrace();
        }

        return listadostiposdecomportamentos;
    }

    public boolean pesquisarSeExisteOTipoDeComportamento(TipoDeComportamento tipodecomportamento) {

        boolean teste = false;

        List<TipoDeComportamento> lista = listarTodos();

        for (TipoDeComportamento tipo : lista) {

            if (tipo.getCodigotipo().equals(tipodecomportamento.getCodigotipo())) {
                teste = true;

            }

        }

        return teste;

    }

}
package Persistencia;

import Entidades.Comportamento;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.List;

/**
 *
 * @author Augusto
 */
public class ComportamentoDAO extends Conexao implements InterFaceDAO<Comportamento> {
    
 TipoDeComportamentoDAO daotipodecomportamento = new TipoDeComportamentoDAO();

    @Override
    public void salvar(Comportamento comportamento) {
        if (pesquisarSeExisteOComportamento(comportamento)) {

            System.out.print("Já existe o comportamento cadastrado com este Código no Banco de Dados. ");

            System.out.println("( " + comportamento.getCodigo() + " | " + buscarPorID(comportamento.getCodigo()).getDescricao() + " )");

        } else {

            String sqlInsert = "INSERT INTO COMPORTAMENTO ("
                    + "CODIGODOCOMPORTAMENTO, " 
                    + "DESCRICAO, " 
                    + "TIPODECOMPORTAMENTO )"
                    + "VALUES (?,?,?);";

            try {
                pstm = abrirConexaoComBD().prepareStatement(sqlInsert);

                pstm.setInt(1, comportamento.getCodigo());
                pstm.setString(2, comportamento.getDescricao());
              
              // AQUI ---------------------------------------------------------------------------------------------------------------------------------
                pstm.setInt(3, comportamento.getTipodocomportamento().getCodigotipo());
              // AQUI ---------------------------------------------------------------------------------------------------------------------------------

                pstm.execute();
                pstm.close();

                fecharConexaocomBD();

            } catch (SQLException e) {

                e.printStackTrace();
            }

        }

    }

    @Override
    public void deletar(Comportamento entidade) {

        String sqlDeletar = "DELETE FROM COMPORTAMENTO WHERE CODIGO = ?";

        try {

            pstm = abrirConexaoComBD().prepareStatement(sqlDeletar);
            pstm.setInt(1, entidade.getCodigo());

            pstm.execute();
            pstm.close();
            fecharConexaocomBD();

        } catch (SQLException e) {

            e.printStackTrace();
        }

    }

    @Override
    public void update(Comportamento entidade) {

        String sql = "UPDATE COMPORTAMENTO SET " + "CODIGO=?, " + "DESCRICAO=?, " + "TIPODECOMPORTAMENTO=? " + "WHERE CODIGO=?";

        try {

            pstm = abrirConexaoComBD().prepareStatement(sql);
            pstm.setInt(1, entidade.getCodigo().get);
            pstm.setString(2, entidade.getDescricao());
            pstm.setInt(3, entidade.getTipodocomportamento().getCodigotipo());
            pstm.execute();
            pstm.close();
            fecharConexaocomBD();

        } catch (SQLException e) {

            e.printStackTrace();
        }

    }

    public Comportamento buscarPorID(Integer id) {

        String sqlPesquisarPorId = "SELECT * FROM COMPORTAMENTO WHERE CODIGO = ?";
        Comportamento comportamento = new Comportamento();

        try {

            pstm = abrirConexaoComBD().prepareStatement(sqlPesquisarPorId);
            pstm.setInt(1, id);
            ResultSet lista = pstm.executeQuery();

            while (lista.next()) {

                comportamento.setCodigo(lista.getInt("CODIGO"));
                comportamento.setDescricao(lista.getString("DESCRICAO"));
                comportamento.setTipodocomportamento(daotipodecomportamento.buscarPorID(lista.getInt("TIPODECOMPORTAMENTO")));

            }

            pstm.close();
            lista.close();
            fecharConexaocomBD();

        } catch (SQLException e) {

            e.printStackTrace();
        }
        return comportamento;

    }

    public List<Comportamento> listarTodos() {

        String sql = "SELECT * FROM COMPORTAMENTO";

        List<Comportamento> listadecomportamentos = new ArrayList<Comportamento>();

        try {

            pstm = abrirConexaoComBD().prepareStatement(sql);

            ResultSet lista = pstm.executeQuery();

            while (lista.next()) {

                Comportamento comportamento = new Comportamento();

                comportamento.setCodigo(lista.getInt("CODIGO"));

                comportamento.setDescricao(lista.getString("DESCRICAO"));

                comportamento.setTipodocomportamento(daotipodecomportamento.buscarPorID(lista.getInt("TIPODECOMPORTAMENTO")));

                listadecomportamentos.add(comportamento);

            }

            pstm.close();
            lista.close();
            fecharConexaocomBD();

        } catch (SQLException e) {

            e.printStackTrace();
        }

        return listadecomportamentos;
    }

    public boolean pesquisarSeExisteOComportamento(Comportamento comportamento) {

        boolean teste = false;

        List<Comportamento> lista = listarTodos();

        for (Comportamento tipo : lista) {

            if (tipo.getCodigo().equals(comportamento.getCodigo())) {

                teste = true;

            }

        }

        return teste;

    }

}

Não estou sabendo como funciona para extrair a sintaxe da entidade. colocar esse segundo get se alguém sobre onde tem uma explicação. 

Compartilhar este post


Link para o post
Compartilhar em outros sites

  • Conteúdo Similar

    • Por violin101
      Caros amigos, saudações.
       
      Estou escrevendo um Sistema Java Web e quando clico no Botão Salvar, o Java acusa esse erro:

      ERROR: Cannot invoke "Object.toString()" because the return value of "java.util.Map.get(Object)" is null
       
      Já tentei de várias formas resolver esse problema, mas não estou conseguindo.

      Por favor, alguém pode me ajudar identificar a origem e resolver o problema acima ?

      Grato,
       
      Cesar
    • Por violin101
      Caros amigos, saudações.

      Estou enfrentando um problema que não consigo entender.

      Após Instalar o MySql versão 8.0.36, funciona corretamente realizando as conexões.

      O problema é:
      ---[ após reiniciar o micro, o MySql não faz as conexões.
      --[ tenta localizar este arquivo, mas não acha: my.ini
       
      Onde localizo ou configuro este arquivo na Pasta MySql ?

      Grato,
       
      Cesar
    • Por violin101
      Caros amigos, saudações.
       
      Por favor, preciso de ajuda em Relação a Instalar o Jasper Reports no Eclipse, pois a opção de Eclipse Marketplace, não encontra para instalar.
       
      Já tentei de todas as formas mas não consegui, alguém conhece alguma rotina explicando este procedimento ?
       
      Grato,
       
      Cesar
    • Por violin101
      Caros amantes da informática.
       
      Saudações.
       
      Estou usando o Eclipse Mars versão 4.5.0  e o 4.5.2, acredito que deva ter versões mais novas. 
      Sou novato em JAVA e estou encontrando alguns problema em Instalação de alguns plugins, como por exemplo:
       
      1) quando tento instalar o JBoss Tools através do Eclipse Marteplace, o Eclipse não o encontra na lista de plugins.
      2) se tento instalar através do Install New Software, abaixa alguns arquivos, mas também não instala o JBoss.
      3) se abro o site e arrasto o download para a área de trabalho do Eclipse, também não instala o JBoss.
       
      Caros amigos, existe outra alguma forma de instalar o JBoss Tools no Eclipse e como seria ?
       
      Grato,
       
      Cesar
       
       
    • Por ILR master
      Pessoal, pergunta bem simples. Abaixo tenho o seguinte código:
       
      <script>
      function alerta()
      {
        if (window.confirm("Você realmente quer sair?")) {
          window.open("sair.html");
      }
      }
      </script>
       
      Funciona perfeitamente, só que está abrindo em outra janela e quero que abra na mesma janela.
       
      Alguém pode me ajudar?
×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.