Ir ao conteúdo

psykotico

Membro Pleno
  • Posts

    301
  • Cadastrado em

  • Última visita

Tudo que psykotico postou

  1. Essa pergunta é pertinente ao fórum de Banco de Dados. Mas antes de responder, vamos as perguntas: Como você sabe qual é o valor que você quer pegar? pra fazer uma pesquisa você precisa passar um valor de busca, como o id do registro, ou algo assim. Sem isso, essa pesquisa fica ilógica porque você já sabe exatamente o valor que quer, não tem porque pesquisar no banco. SELECT numero FROM tabela WHERE numero = 21; Seria algo assim ...
  2. Sinceramente é um erro complicado ... eu prefiro fazer typecasts usando if para testar o tipo do objeto antes de converter if (client.get(i).getConta() instanceof ContaCorrente) { ContaCorrente cc = (ContaCorrente) client.get(i).getConta(); }else if (client.get(i).getConta() instanceof ContaPoupanca){ ContaPoupanca poupanca = (ContaPoupanca) client.get(i).getConta(); } PS.: Sei que foi exemplo, mas evite usar caracteres especiais nos nomes das classes, dependendo da versão do compilador pode dar problema ...
  3. Bem ... em primeiro lugar você precisa criar as classes que representarão cada uma das Tags do XML da NFe. Isso não é muito difícil caso seja apenas para transformar do XML para o objeto, o mesmo não pode ser dito para transportar do objeto para o XML, pois o XML da NFe tem regras de formação um pouco tanto complexas. Após criar TODAS as classes descritas na documentação da NFe, você pode usar uma das bibliotecas para fazer isso, como a padrão da JAXB ... eu sinceramente prefiro trabalhar com a XSTREAM para fazer essa conversão. No site da biblioteca tem vários exemplos e temos vários casos de dúvidas sobre ele em sites e fóruns. Vai um exemplo básico de como ler um XML e transformá-lo em Objeto. XStream xs = new XStream(new DomDriver("UTF-8")); xs.autodetectAnnotations(true); xs.alias("nfeProc", NfeProc.class); return (NfeProc) xs.fromXML(xml); Note o comando autodetectAnnotations(true). Isso libera a biblioteca para procurar pelas anotações da classe para itens como Listas, atributos com nomes diferentes no xml e na classe, entre outras coisas. Por exemplo: @XStreamImplicit(itemFieldName="det") private List<Det> det; Esse código força o nome da tag como 'det', ao invés dele criar uma tag 'det' e internamente vários outros 'det' compondo a lista.
  4. Se você for mais específico sobre qual a dúvida fica mais fácil ajudar. Como não foi, fica aqui um Hello Word! public class Hello { public static void main(Strin[] args){ System.out.println("Hello Word!"); } }
  5. Eu recomendo começar estudando o básico e entender Orientação à Objetos... todo o conceito. Depois, pegar o livro de certificação java e estudar ele, pra pegar os detalhes do funcionamento dele e da JVM ... Por fim, Design Patterns, pra aprender as melhores práticas ... Recomendo muito ler esse livro "Effective Java (Joshua Bloch)" quando você já tiver um bom domínio da Orientação à Objetos. E lembre-se: Não se prenda a uma linguagem. Toda linguagem tem seus prós e contras. Coloque isso em mente pra poder tb avaliar corretamente quando você pode utilizar outra linguagem ao invés de java.
  6. Isso depende da implementação das duas pontas. A aplicação no servidor tem que estar esperando receber esse arquivo. A partir daí tem várias formas, sendo por Socket (http://www.devmedia.com.br/java-socket-transferencia-de-arquivos-pela-rede/32107) ou HTTP Post (http://stackoverflow.com/questions/2469451/upload-files-from-java-client-to-a-http-server)... Tem também o FTP, mas ai já envolve várias outras situações.
  7. A melhor forma de se entender, é tentar jogar o conceito para o mundo real. Então vamos começar com fila. No banco, temos uma fila. Se existem 3 pessoas na fila, e você entrar após elas, você só será atendido após as 3 pessoas terem sido atendidas. Com isso temos o conceito FIFO (First In First Out - Primeiro a entrar na fila é o primeiro a sair) ... fila serve para que você possa manter na estrutura a ordem de entrada dos dados ... Pensando agora com programação, você precisaria guardar na saída da estrutura as informações da posição do primeiro da fila e do último ... assim você sabe qual a posição do próximo a ser retirado e qual a posição do próximo a ser inserido ... o Deque é uma fila. Porém tem um comportamento diferente, pois você pode remover tanto o primeiro quanto o último elemento que entrou. é a única diferença dessa estrutura para a Fila. Sobre pilhas, nada melhor como uma pilha de pratos. Pela facilidade, você sempre vai pegar o prato de cima da pilha, que normalmente foi o último a ser colocado e, sendo assim, o último prato a ser utilizado é o primeiro que foi colocado e que está embaixo de toda a pilha de pratos. E então o conceito de FILO (First In Last Out - Primeiro a entrar na pilha é o último a sair) ... A pilha funciona de uma forma completamente contrária a fila, onde você quer "inverter" na saída da estrutura a ordem de entrada dos dados ... Pensando em programação, na estrutura você precisaria saber sempre a posição do último (topo) da pilha para poder inserir um novo elemento, ou remover o último. Agora o problema ... pensar nisso computacionalmente, o ideal é que você tenha um ótimo domínio sobre Listas (arrays) ... assim você conseguirá entender facilmente como implementar uma ... (Lembre-se, o importante é saber o conceito e como empregá-lo. Existe várias formas de se implementar uma estrutura de dados)
  8. O ideal é apenas você utilizar a ideia de Service. Basicamente deixar na view apenas o básico para mostrar o conteudo e recuperar os inputs ... os services são as classes que realmente tem a regra de negócio. Assim você pode especializar cada service pra fazer um determinado módulo e utilizar apenas as DAOs necessárias para tal.
  9. no split .. .tenta usar quebraLinha[x].split("[\\s]*\\->[\\s]*"); Com isso ele usa a regex pra remover a "seta" com ou sem espaços ... Edit.: Pela logica você deveria ter no final algo como: Então o ideal é você usar um Objeto pra ter o Simbolo inicial e a produção quase que da forma que eu apresentei ali em cima ... assim você tem essa situação de forma mais natural pra seguir a lógica ...
  10. Pergunta: O Cancelamento da hospedagem também eliminou os backups do serviço de hospedagem??? se não, você pode solicitar isso ... caso contrário, depende de cada licença ... algumas são por uso ...
  11. Primeiro: Sem o Trace da Exception fica complicado ... o NullPointer pode estar sendo lançado em qualquer lugar aí. Colabora ae kkkk Segundo: todo NullPointer é um erro na criação do objeto. Veja a linha que está lançando a exceção e verifique onde esse objeto está sendo criado. Lá deve ser o erro.
  12. Dá pra fazer sim ... Mas depende do quanto de esforço você quer nisso. Não será algo simples, então aconselho você a estudar algum Framework, como EJB, Spring ou algum outro. Talvez, você pode também recorrer a outras linguagens, como PHP e Ruby, que possuem uma linguagem voltada para Web e talvez seja mais fácil para você desenvolver. E por fim, existem também serviços de gerenciamento de lojas virtuais, onde você cria a loja, customiza (de forma limitada) o layout e o sistema todo da loja já está pronto, a um custo pequeno até.
  13. Para implementar, substitua os gets do Scanner por JOptionPane.showInputDialog() ... e todos os Sysout por JOptionPane.showMessageDialog() ... Perceba que o retorno do InputDialog é sempre um String ... terá que converter esse valor para fazer o sistema funcionar
  14. Há várias formas de fazer isso ... você pode implementar uma classe de conexão usando o JDBC, e nesse caso sua classe será responsável por todas as requisições ao banco. você tb pode utilizar um ORM, como o Hibernate para controlar essas chamadas você tb pode utilizar um JPA API, que ainda adiciona várias facilidades ao que o ORM faz. Eu recomendo inicialmente você começar pelo Hibernate, para entender o conceito e dar uma lida no JPA.
  15. Acredito que a melhor forma de fazer isso é utilizando um Map. Não será necessário nem ao menos utilizar o equals, pois a chave do Map será o tipo, e o valor será a quantidade. Com isso, no foreach, você apenas faz o calculo: for (Engenheiro eng : listaEng){ //verifica se existe a chave já no map, caso contrário inicializa com 0 int total = 0; if (map.containsKey(eng.getType()){ total = map.get(eng.getType()); } //atualiza o valor dessa chave map.put(eng.getType(), total + 1); } Ai, para mostrar, basta você percorrer cada chave do Map e exibir o valor ...
  16. Para que eles apareçam randomicamente, você tem que estabelecer uma área segura para a criação desses objetos (para não correr o risco de um objeto ser criado na mesma posição ou muito próximo ao personagem do jogador) ... Essa área é apenas para a criação desses objetos, é uma área virtual da tela) depois disso, basta rolar um Random para as posições X e Y (mas isso só quando eles aparecerem na tela) ... com a movimentação que já deve ter sido desenvolvido na classe do objeto, fica simples desenvolver ...
  17. Bem ... acredito que não há problema com o algoritmo em si ... se você implementar a montagem do grafo separado do algoritmo que encontra a melhor rota, isso já resolve o problema. O que você precisa é apenas descobrir quando os pesos serão alterados. Isso vai acontecer durante o processamento? Entre um processamento e outro? Se for o primeiro caso, implica no uso de Threads e uma abordagem para solucionar a memória compartilhada (como semáforo, por exemplo) Se for o segundo caso, basta você identificar a mudança e atualizar o grafo que será passado para o método de melhor rota. Uma dica. O Banco de dados Neo4J é bem específico para trabalhar com grafos, e já tem Dijikstra implementado. Se você fizer apenas o sistema para atualizar o banco e utilizar o processo do próprio banco, ele já vai funcionar exatamente como você quer.
  18. Sim, é possivel ... aliás a forma mais fácil, na minha opinião, seria utilizar o Selenium API ... junto com o Java, ele abre um navegador (pode ser em background ou mostrando na tela) e ele vai acessar o site utilizar como se fosse você mesmo que estivesse copiando os dados ... porém, os dados das tabelas você pode acessar dinâmicamente por id ou classe de estilo ... acho que essa é a abordagem mais simples para resgatar os dados ... depois, pra salvar em XLSX tem várias formas (eu recomendo salvar como CSV) ... O Selenium é muito utilizado para testes funcionais, mas nada impede de utilizar ele para esse fim.
  19. O Wi-fi é diferente do Bluetooth. Ele vai funcionar como uma conexão física. Então a conexão é gerenciada pelo SO. O que você pode fazer é estudar uma forma de utilizar o SO para fazer essa conexão. Nesse exemplo, foi feito utilizando um Linux. https://github.com/alexisfasquel/growstuff-connector-client/blob/master/src/tools/Wifi.java Em Android talvez por sergurança você não consegue rodar comandos desse tipo, mas teria de ver se existe alguma API disponibilizando essa conexão.
  20. hehe Então ... esse fórum é de Java, acho que sua pergunta seria melhor respondida no fórum de Linguagem de Programação Web. E infelizmente já faz tempo que não vejo PHP ... trabalhei apenas com Symphony e CakePHP ... mas se for o que eu to pensando, porque você não tenta fazer isso direto pelo Active Record??? assim ... usa o count pra fazer a pesquisa pelo id .. (algo como $this->db->count() ) ... e se o valor for maior que 0, você chama a função passando o id como parâmetro ...
  21. Primeiro você precisa retornar algo do método que produz o PDF. public static InputStream convert(String input, OutputStream out) throws DocumentException{ return convert(new ByteArrayInputStream(input.getBytes()), out);}//Método não precisa ficar visível a todos, pois vc já possui um método pra realizar essa conversãoprivate static InputStream convert(InputStream input, OutputStream out) throws DocumentException { Tidy tidy = new Tidy(); Document doc = tidy.parseDOM(input, null); ITextRenderer renderer = new ITextRenderer(); renderer.setDocument(doc, null); renderer.layout(); renderer.createPDF(out); return new ByteArrayInputStream(out.toByteArray());} Agora, na sua aplicação, você precisa que retorne o stream de dados para o cliente. Caso esteja usando JAX-RS na parte web, você teria um método semelhante a isso: @[member=Get]@Produces("application/pdf")@Path("/download")public Response sendPDF() { //Gera o PDF como Stream de dados InputStream stream = PdfcrowdTest.convert("test", new ByteArrayOutputStream()); //Retorna a resposta com status 200 para o navegador junto com o stream de dados. return Response.ok(stream).build();}
  22. Ajax é um Javascript que faz uma chamada no seu webservice .... no seu sistemas, você precisa criar um WebService (dou a preferência para REST) e na sua view (o html) você faz a chamada Ajax. Caso esteja usando o jQuery, isso é super simples. Sem jQuery tb não é tão difícil, tem exemplo no W3Schools ... Eu não tenho como te passar algum código, porque não faço nem ideia de como você estruturou seu sistema.
  23. Documentação do JAVA 8 -> https://docs.oracle.com/javase/8/docs/api/ (Qualquer coisa, você pode procurar no google por "JAVA API " e o numero da versão do java que você quer) Para baixar classes, se é o inicio do aprendizado, vale a pena ir no Maven Repository -> http://mvnrepository.com/ ... e isso vai te colocando no caminho pra aprender a usar um Gerenciador de Dependências, no caso o Maven ou, se preferir (e é a nova tendência) usar o Gradle ... Explicando bem por cima, um gerenciador de dependências baixa automaticamente e organiza todos os JARs que você vai usar no sistema. É muito útil pra não ficar guardando as bibliotecas de terceiros junto com seu código ....
  24. Como você, tb não vou rodear ... Apenas lembrando que um Serviço REST seria mais apropriado para conexões mobile, porque o container JSON é mais leve que o XML (além do parser ser um pouco mais simples) Eu acho que usar nessa situação o Framework Spring vai te dar uma ajuda boa, já que não me parece ser algo muito cheio de regras absurdas ... então vai meu conselho: Criando a aplicação web com o Spring Boot (e fugir dos XML de configuração) -> https://spring.io/guides/gs/spring-boot/ Aplicando o conceito HATEOAS (Caso seja necessário) ... mas explicando algumas características de um recurso REST -> https://spring.io/guides/gs/rest-hateoas/ E aqui um exemplo sem o Spring Boot, com configuração de autenticação, mas se você utilizar só a parte lógica, dá pra juntar facilmente -> https://spring.io/guides/tutorials/bookmarks/
  25. você percebe que todo Grafo é formado por Vértice e Aresta ... Sendo que a relação deles é 1->N entre Vértice e Aresta ... e SEMPRE 2 de Aresta pra Vértice, que podemos chamar de Origem e Destino. Além disso, no Grafo apresentado, você não tem indicadores de sentido, o que significa que cada aresta tem os dois sentidos, tanto de A para B quanto de B para A... Com isso o que você precisaria fazer: 1) Pegar o Vértice A, verificar se já existe ... se não existir, cria ... se já existe, adiciona Aresta com destino ao Vértice B 2) Pegar o Vértice B, verificar se já existe ... se não existir, cria ... se já existe, adiciona Aresta com destino ao Vértice A 3) Adicionar a Aresta na lista de Aresta que compõe o grafo 4) A partir daqui, com o Grafo montado, poderemos trabalhar a questão de remover os vértices de grau 1 ... nesse caso fica fácil ... percorrendo a lista, basta procurar os Vértices que só aparecem uma única vez como Origem. 5) Com a relação desses Vértices, basta eliminar todas as Arestas que contiverem os vértices, sejam como Origem ou Destino. 6) Pra montar a Saída, você deve pegar o restante da lista e "ignorar o caminho de retorno" que foi o nosso passo 2...

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

×
×
  • Criar novo...