Jump to content

Search the Community

Showing results for tags 'dao'.



More search options

  • Search By Tags

    Type tags separated by commas.
  • Search By Author

Content Type


Forums

  • Q&A Desenvolvimento
    • Perguntas e respostas rápidas
  • Desenvolvimento e Banco de Dados
    • HTML e CSS
    • Java
    • Javascript
    • .NET
    • PHP
    • Python
    • Ruby
    • Mobile
    • Ambientes de Desenvolvimento
    • Arquitetura e Métodos Ágeis
    • Banco de Dados
    • DevOps
    • Desenvolvimento de Games
    • E-Commerce e Pagamentos Online
    • SEO e Otimizações
    • WordPress
    • Algoritmos & Outras Tecnologias
  • Design e Produto
    • Fotografia
    • Photoshop
    • Design de interfaces e UX
    • Edição/Produção de Vídeos
    • Marketing Online
    • Desenho, Ilustração e 3D
  • Entretenimento e uso pessoal
    • Geral
    • Segurança & Malwares
    • Gadgets e wearable
    • Softwares e Apps
    • Entretenimento

Find results in...

Find results that contain...


Date Created

  • Start

    End


Last Updated

  • Start

    End


Filter by number of...

Joined

  • Start

    End


Group


Google+


Hangouts


Skype


Twitter


deviantART


Github


Flickr


LinkedIn


Pinterest


Facebook


Site Pessoal


Localização


Interesses

Found 8 results

  1. aldoneto.89

    erro

    tenhos as 3 seguintes classes: <?php class Sql extends PDO{ private $conn; //conexão com o banco public function __constuct(){ $this->conn = new PDO("mysql:host=localhost;dbname=php7","root","root"); } private function setParams($statment, $parameters = array()){ foreach(parameters as $key => $value) { //associar os parametros ao comando.//chave e o valor $this->bindParam($key, $value); } } private function setParam($statment, $key, $value){ $statment->bindParam($key, $value); } public function query($rawQuery,$params = array()){ //1-parametro a ser tratato e 2 os dados $stmt = $this->$conn->prepare($rawQuery); // $this->setParams($stmt, $params); $stmt->execute(); return $stmt; } public function select ($rawQuery, $params = array()):array { $stmt = $this->query($rawQuery, $params); $stmt->fetchAll(PDO::FETCH_ASSOC); } } <?php spl_autoload_register(function($class_name){ $filename = $class_name.".php"; if(file_exists(($filename))){ require_once($filename); } }); ?> <?php require_once("config.php"); $sql = new Sql(); $usuarios = $sql->select("SELECT * FROM tb_usuarios"); echo json_encode($usuarios); ?> e esta dando o erro : Fatal error: Uncaught TypeError: PDO::__construct() expects at least 1 parameter, 0 given in C:\xampp\htdocs\DAO\index.php:5 Stack trace: #0 C:\xampp\htdocs\DAO\index.php(5): PDO->__construct() #1 {main} thrown in C:\xampp\htdocs\DAO\index.php on line 5 o engrçado é que peguei em uma videoaula e esta igual ao do professor diz que tem q passar um parametro, mas no dele não tem parametro
  2. Cheguei em um ponto da minha aplicação em que preciso relacionar tabelas em uma única consulta. Até o momento, uso uma classe DAO para cada tabela no banco de dados, com funções CRUD básicas.Mas agora surgiu a necessidade de relacionar essas tabelas, qual é a camada que faz isso e como ela funciona? Por exemplo: A Classe PermissionsDAO faz insert, update, delete, select na tabela permissions, mas essa classe agora precisa acessar as tabelas privileges, groups, user_groups, etc. Procurei na net, há várias explicações, (e a busca aqui do Fórum está desagradável) mas cada um diz uma coisa. Fiquei mais confuso ainda! Estou tentando implementar o padrão MVC.
  3. Cheguei em um ponto da minha aplicação em que preciso relacionar tabelas em uma única consulta. Até o momento, uso uma classe DAO para cada tabela no banco de dados, com funções CRUD básicas. Mas agora surgiu a necessidade de relacionar essas tabelas, qual é a camada que faz isso e como ela funciona? Procurei na net, há várias explicações, (e a busca aqui do Fórum está desagradável) mas cada um diz uma coisa. Fiquei mais confuso ainda! Estou tentando implementar o padrão MVC.
  4. Estou começando e tenho algumas dúvidas, sobre como implementar isso. Dúvida sobre a classe DAO, é melhor passar o objeto de conexão com injeção de dependência ou instância-lo no construtor? Qual seria a melhor abordagem?
  5. claudiojuniorfabiao

    Diferença entre DAO e ORM

    Fala, galera! Indo direto ao ponto, qual a diferença entre o padrão de software DAO e um ORM? Em minha ignorância, me parecem conceitos semelhantes, sendo o DAO simplesmente algo mais abstrato, então, de certa forma, me parece que todo ORM está implementando um DAO de qualquer maneira, uma vez que (sendo um DataMapper), separa a lógica de domínio, da lógica de acesso aos dados. Agradeço desde já a contribuição com os meus estudos.
  6. ehrenato

    Cadastro não permitir dados iguais

    Como eu faria para; ao tentar inserir um novo registro no banco o sistema não permita caso já exista dados cadastrados? Exemplo: estou fazendo um planejamento de aulas e ao tentar cadastrar aquela aula naquela data o sistema permita ou não o cadastro. *o formulário está pronto. o DAO e o model estão prontos. o banco já está pronto e recebendo os dados e etc.
  7. Meu problema é o seguinte, vi que quando edito um registro , funciona, o cadastro é alterado, mas quando eu quero cadastrar um novo usuário, ele cai na condição de edição, ele edita as informações do cadastro que eu estava alterando anteriormente, não deixando cadastrar um novo usuário, porque isso acontece? Variável responsável por validar se está editando ou não. private int codigoEditar = 0; Método responsável por buscar o código do usuário na tabela. JButton button_3 = new JButton("Editar"); button_3.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { tabbedPane.setSelectedIndex(0); // Variável responsável por capturar a linha selecionada int linhaSelecionada = -1; // Busca a linha selecionada e armazena na variável // linhaSelecionada(tr) // linhaSelecionada = tabela.getSelectedRow(); // Validar se uma linha foi selecionada if (linhaSelecionada >= 0) { // Armazena a informação da primeira coluna da linha // selecionada(td) //coluna 0 código do funcionário int codigoFuncionario = (int) tabela.getValueAt(linhaSelecionada, 0); buscarFuncionario(codigoFuncionario); } else { JOptionPane.showMessageDialog(null, "Selecione uma " + "linha para alterar o Funcionário!"); } } }); Método que recebe como parâmetro o código do funcionário, colocando as informações do usuário na tela de cadastro para alteração. //recebe como parâmetro o código do funcionário protected void buscarFuncionario(int codigoFuncionario) { control.Funcionarios func = new control.Funcionarios(); //laço foreach que percorre o arraylist referenciando o código do funcionário for (Funcionarios funcio : func.listarFuncionarios(codigoFuncionario + "", 1)) { /*Funcionarios funcio é o Dao, para setar(set) e pegar(get) * func.listarFuncionarios(codigoFuncionario + "", 1)) códigoFuncionário + "" concatena o código com o parametro texto da pesquisa da * classe control * 1 é a pesquisa por código do funcionário referenciando o parametro do código do funcionário */ // Setar informações na tela de cadastro nome.setText(funcio.getNome()); email.setText(funcio.getEmail()); endereco.setText(funcio.getEndereco()); telefone.setText(funcio.getTelefone()); cpf.setText(funcio.getCpf_funcionario()); //Variável que recebe o valor do codigo do usuário //importante para a alteração codigoEditar = funcio.getCodigo_funcionario(); } cadastro.setVisible(true); listagem.setVisible(false); } Método responsável por salvar ou alterar o funcionário. protected void salvar() { // Capturar informações que o usuário digitou String nome_funcionario = nome.getText(); String cpf_funcionario = cpf.getText(); String endereco_funcionario = endereco.getText(); String email_funcionario = email.getText(); String fone_funcionario = telefone.getText(); String senha_funcionario = senha.getText(); String rep_senha_funcionario= repsenha.getText(); if(email_funcionario.equals("")&& cpf_funcionario.equals("")&&fone_funcionario.equals("")&&nome_funcionario.equals("")){ JOptionPane.showMessageDialog(null, "Preencha os campos"); }else if(!rep_senha_funcionario.equals(senha_funcionario)){ JOptionPane.showMessageDialog(null, "As senhas são diferentes"); //validar se as senhas são iguais }else if(endereco_funcionario.equals("")){ JOptionPane.showMessageDialog(null, "O campo Endereço é Obrigatório!"); } Funcionarios func = new Funcionarios(); func.setNome(nome_funcionario); func.setEmail(email_funcionario); func.setTelefone(fone_funcionario); func.setSenha(senha_funcionario); func.setEndereco(endereco_funcionario); func.setCpf_funcionario(cpf_funcionario); func.setCodigo_funcionario(codigoEditar); control.Funcionarios manutencao = new control.Funcionarios(); if(codigoEditar == 0){ manutencao.inserir(func); }else{ manutencao.alterar(func); } limparInformacoes(); tabbedPane.setSelectedIndex(1); } } Classe Dao package dao; public class Funcionarios { private int codigo_funcionario; private String cpf_funcionario; private String email; private String endereco; private String nome; private String senha; private String telefone; public int getCodigo_funcionario() { return codigo_funcionario; } public void setCodigo_funcionario(int codigo_funcionario) { this.codigo_funcionario = codigo_funcionario; } public String getCpf_funcionario() { return cpf_funcionario; } public void setCpf_funcionario(String cpf_funcionario) { this.cpf_funcionario = cpf_funcionario; } public String getEmail() { return email; } public void setEmail(String email) { this.email = email; } public String getEndereco() { return endereco; } public void setEndereco(String endereco) { this.endereco = endereco; } public String getNome() { return nome; } public void setNome(String nome) { this.nome = nome; } public String getSenha() { return senha; } public void setSenha(String senha) { this.senha = senha; } public String getTelefone() { return telefone; } public void setTelefone(String telefone) { this.telefone = telefone; } } Método de salvar do pacote control da classe funcionários public void inserir(dao.Funcionarios func) { if (func != null) { // Variável de conexão de DB java.sql.Connection conn = null; try { conn = ConnectDB.conexaoDB(); java.sql.PreparedStatement pstm; pstm = conn.prepareStatement(INSERT); pstm.setString(1, func.getCpf_funcionario()); pstm.setString(2, func.getEmail()); pstm.setString(3, func.getSenha()); pstm.setString(4, func.getNome()); pstm.setString(5, func.getEndereco()); pstm.setString(6, func.getTelefone()); // Envia para o banco de dados Boolean teste; teste = pstm.execute(); // Validar inserção no banco de dados if (!teste) { JOptionPane.showMessageDialog(null, "Funcionario cadastrado com sucesso!"); } else { JOptionPane.showMessageDialog(null, "Erro ao cadastrar o Funcionario!"); } // Fecha a conexão com o banco de dados ConnectDB.fecharConexao(conn); } catch (Exception e) { JOptionPane.showMessageDialog(null, "Erro ao cadastrar o Funcionario!"); } } } Método de alterar do pacote control da classe funcionários public void alterar(dao.Funcionarios func) { java.sql.Connection conn = null; try { conn = ConnectDB.conexaoDB(); //prepara a query java.sql.PreparedStatement pstm; pstm = conn.prepareStatement(UPDATE); pstm.setString(1, func.getCpf_funcionario()); pstm.setString(2, func.getEmail()); pstm.setString(3, func.getNome()); pstm.setString(4, func.getEndereco()); pstm.setString(5, func.getTelefone()); pstm.setString(6, func.getSenha()); pstm.setInt(7, func.getCodigo_funcionario()); // Envia para o banco de dados Boolean teste; teste = pstm.execute(); // Validar inserção no banco de dados if (!teste) { JOptionPane.showMessageDialog(null, "Funcionario alterado com sucesso!"); } else { JOptionPane.showMessageDialog(null, "Erro ao alterar o funcionario!"); } // Fecha a conexão com o banco de dados ConnectDB.fecharConexao(conn); } catch (SQLException e) { JOptionPane.showMessageDialog(null, "Erro ao alterar o funcionario!"+e.getMessage()); } } } Peço ajuda de vocês para corrigir o problema.
  8. Galera por exemplo: eu tehno um PostDAO e nessa classe tenho: class PostDAO implements IPostDAO { private $db; private $table = 'posts'; public function __construct($instance) { $this->db = $instance; } public function findById($id) { //code here //... } public function findAll() { //code here //... } public function insert(Post $post) { //code here //... } //... } Até aqui tudo certo... Mas, por exemplo se eu quiser pesquisar os posts por titulo ai crio PostDAO::findByTitle($title) mas se eu quiser fazer uma consulta no banco ordenado crescente? Ou limitar as buscas na query ? Terei que criar outros metodos para isso, como por exemplo: PostDAO::findByTitleAsc($title) ou PostDAO::findByTitleDesc($title) Não sei se ficou claro minha dúvida, pois basicamente quero saber se pra cada tipo de consulta no banco terei que ter um metodo diferente.
×

Important Information

Ao usar o fórum, você concorda com nossos Terms of Use.