Javax
Membro Júnior-
Posts
8 -
Cadastrado em
-
Última visita
Reputação
1-
Olá, Felipe! Primeiramente, muito obrigado por comentar esse meu post. O problema estava mais precisamente no trecho abaixo, como você indicou: contratos.add(new Contrato()); //Aqui está adicionando à lista um novo objeto da classe Contrato, zerado. pagamentos.add(new Pagamento());//Idem, porém da classe Pagamento. Ocorre que eu inseri um objeto da classe Contrato e a de Pagamento zerados. Quando eu declarei novo construtor funcionou, conforme abaixo: contratos.add(new Contrato("contrato exemplo", 1000)); //Aqui está adicionando à lista um novo objeto da classe Contrato, zerado. pagamentos.add(new Pagamento(100));//Idem, porém da classe Pagamento. Realmente, eu esqueci de instanciar o objeto cliente1: Cliente cliente1 = new Cliente(); Os métodos getters e setters das classes Cliente, Contrato e Pagamento, foram abstraídos, assim como também os construtores, mas eu deveria ter especificado eles mesmo, você tem razão. Poderia ter, também, instanciado as listas via construtor e não no método main. Em suma, o meu propósito é realmente inserir um objeto pronto, e isso funcionou corrigindo o detalhe exposto acima. Valeu! Um abraço!
-
Olá pessoal! Considerem as seguintes classes: public class Pagamento { } public class Contrato { private ArrayList<Pagamento> pagamentos; } public class Cliente { private ArrayList<Contrato> contratos; } Com base nessas classes, temos uma situação de aninhamento da seguinte forma: [code] > Cliente > Contrato >Pagamento [/code] Ocorre que, quando tento gravar o objeto cliente no Realtime Database do Firebase, o terceiro nível não está sendo armazenado. Vejam: public class BancoDAO { public void gravar(ArrayList<Cliente> clientes) { FirebaseDatabase database = FirebaseDatabase.getInstance(); DatabaseReference myRef = database.getReference().child("clientes"); Map<String, Object> users = new HashMap<>(); for(Cliente cliente : clientes) { String idCliente1 = UUID.randomUUID().toString(); cliente.setIdCliente(idCliente1); users.put(idCliente1, cliente); } myRef.setValueAsync(users); } } Main.java public class Main { public static void main(String args[]) { ArrayList<Cliente> clientes = new ArrayList<Cliente>(); ArrayList<Contrato> contratos = new ArrayList<Contrato>(); ArrayList<Pagamento> pagamentos = new ArrayList<Pagamento>(); contratos.add(new Contrato()); pagamentos.add(new Pagamento()); cliente1.setContratos(contratos); cliente1.getContratos().get(0).setPagamentos(pagamentos); clientes.add(cliente1); BancoDAO bancoDAO = new BancoDAO(); bancoDAO.gravar(clientes); } } [code] > clientes > 1393a1 > contratos > 0 > valor: 0 [/code] Ou seja, ele gravou o cliente 1393a1, entendeu que tem uma lista de contratos dentro desse cliente, mas não gravou nenhum contrato, e por conseguinte, nenhum pagamento que estaria dentro de contrato. Alguém saberia me orientar o que estou fazendo de errado? Porque na verdade, eu quero armazenar um objeto cliente, que contém uma lista de contratos, onde cada contrato tem uma lista de pagamentos.
-
Excel Referências Externas Entre Pastas De Trabalho
Javax respondeu ao tópico de Javax em Microsoft Office e similares
RESOLVIDO! Utilizei a função =INDIRETO("'C:\diretório\[arquivo.xlsx]planilha'!A1"). -
Excel Referências Externas Entre Pastas De Trabalho
Javax postou um tópico em Microsoft Office e similares
Olá, pessoal! Tenho um diretório, que contém 12 arquivos .xlsx, dos quais comunicam-se entre si. As comunicações, entre os arquivos .xlsx, têm sido feitas através da seguinte sintaxe: 'C:\caminhoCompleto\[arquivo.xlsx]planilha'!A1. Entretanto, estou obtendo o caminho informado acima de maneira dinâmica, de modo que, tal caminho tem vindo como um texto: "'C:\caminhoCompleto\[arquivo.xlsx]planilha'!A1". Como faço para executar um comando que está na forma textual, como, "'C:\caminhoCompleto\[arquivo.xlsx]planilha'!A1"? -
Outro Projeto e Ciclo de Vida de Software
Javax respondeu ao tópico de Javax em Programação - outros
Obrigado! -
Olá, pessoal! Sei que o título deste tópico foge um pouco do contexto do fórum. Entretanto, gostaria de saber se alguém tem conhecimento em Projeto de Software. Tenho dúvidas a respeito desse assunto e não encontrei nenhuma área específica na internet para tratar disso. Abraço!
-
Boa noite! Alguém sabe dizer se o TouchPad do Notebook HP ENVY 17T J178 possui a funcionalidade de rolagem? Quanto ao teclado, este modelo não possui cedilha. É possível trocá-lo? Aguardo respostas.
Sobre o Clube do Hardware
No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais
Direitos autorais
Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais