Arquivo para 'Java'
Agendamento de tarefas em aplicações web: um truque com Quartz
Postado em 25. nov, 2010 por Paulo Silveira.
O Quartz é a biblioteca mais utilizada para agendar tarefas Java. Simples e muito superior ao mecanismo de Timer do Java EE. Através de sua API, podemos facilmente criar um Job, como um que vai enviar email lembrando a necessidade de mudança de senha, por exemplo: Se quisermos que esse procedimento seja executado uma vez more »
Continue Lendo
JavaEE 6: contexto assíncrono das Servlets para o Ajax push
Postado em 27. set, 2010 por Paulo Silveira.
Desenvolvedores de backend que precisam de muita escalabilidade já conhecem os truques de IO não-blocante há muito tempo: selector, poll e epoll no Linux, kqueue no MacOS e BSD e I/O Completion Ports no Windows. A palestra do Renato Lucindo no QConSP abordava questões e soluções que podiam ser implementadas com essas abordagens. Curiosamente são more »
Continue Lendo
QConSP 2010: como foi o principal evento de arquitetos e desenvolvedores no Brasil
Postado em 17. set, 2010 por Lucas Souza.
Esse último fim de semana foi bastante agitado para a comunidade de desenvolvedores brasileiros: o QCon, principal evento de arquitetos e desenvolvedores, finalmente desembarcou no Brasil e aconteceu na cidade de São Paulo no centro de eventos FeComércio. O evento foi organizado pela Caelum e pelo InfoQ Brasil, e ultrapassou até mesmo o tamanho da more »
Continue Lendo
Começando com parâmetros e configurações da JVM
Postado em 09. set, 2010 por Lucas Souza.
Quando rodamos nossas aplicações na JVM não sabemos o que acontece internamente dentro dela. Questões como o Garbage Collector, JIT e alocação de memória heap passam desapercebidas por um bom motivo: não devemos nos preocupar (muito) com elas. Mesmo sem ter um controle direto sobre as diferentes JVMs existentes, muitas vezes precisamos customizar e fazer more »
Continue Lendo
ConcurrentModificationException e os fail-fast iterators
Postado em 18. ago, 2010 por Paulo Silveira.
A java.util.ConcurrentModificationException costuma surpreender a muitos: como uma exception com esse nome pode aparecer mesmo em uma aplicação single threaded, que não envolve concorrência alguma no acesso dessa coleção? Para entender melhor, vale relembrar que as coleções muito antigas, como Vector e Hashtable, são thread safe, implementado através do uso do synchronized em seus métodos more »
Continue Lendo
Possibilidades de design no uso do seu Generic DAO
Postado em 26. jul, 2010 por Lucas Cavalcanti.
Muitas vezes, quando estamos criando nosso sistema temos a tentação de criar o GenericDAO para não ter que ficar repetindo as operações CRUD e listagens. O maior problema com o GenericDAO é que não necessariamente todas as operações fazem sentido para uma determinada classe. Daí o que fazer se, por exemplo, não faz sentido excluir more »
Continue Lendo
Então você quer ser um arquiteto Java?
Postado em 21. jul, 2010 por Paulo Silveira.
Durante o atual processo de revisão do livro de Arquitetura e Design de Software, discussões apareceram sobre o termo arquiteto. Antes de definir o que faz um arquiteto, há o termo arquitetura. O que é a arquitetura de uma aplicação? Uma pergunta difícil de responder. Entre as definições mais antigas, Roy Fielding possui um bom more »
Continue Lendo
Arredondamento no Java: do double ao BigDecimal
Postado em 15. jul, 2010 por Paulo Silveira.
É fácil se deparar com as limitações do double no Java e na maioria das outras linguagens: quando vamos trabalhar com dinheiro notamos que as contas não estão saindo exatamente como esperávamos: O resultado é um estranho 0.30000000000000004, que pode acarretar em problemas graves dependendo da utilização e arrendondamento aplicado depois nesse número. O problema more »
Continue Lendo
Ordenando coleções com Comparable e Comparator
Postado em 22. jun, 2010 por Nico Steppat.
Uma tarefa comum no dia-a-dia dos desenvolvedores é ordenar uma lista ou array. Para não inventar a roda, a Collections API do Java (também conhecida pelo nome do seu pacote, o java.util) vem pronta para ajudar nessa tarefa. Falamos dessa API extensivamente na apostila do curso FJ-11, e vou aqui passar para o problema específico more »
Continue Lendo
Guardando senhas criptografadas em Java
Postado em 17. jun, 2010 por Ricardo Nakamura.
Eu e o Thiago Ferreira estavámos mais uma vez na Caelum passando pela situação de gravar as senhas do usuário no banco de dados. Ainda hoje alguns grandes sites cometem o grave erro de guardar as senhas dos usuários em texto puro, fazendo com que um possível roubo de dados acarrete num problema ainda maior. more »
Continue Lendo
Revisitando a concatenação de Strings: StringBuilder e StringBuffer
Postado em 13. jun, 2010 por Paulo Silveira.
Uma discussão muito antiga que frequentemente aparece no Java é o uso errado da concatenação de Strings, que pode acarretar numa grave perda de performance e trashing de memória. Mas por que? O problema é muito simples de enxergar. Imagine um laço em que você concatena uma String com todos os números de 0 a more »
Continue Lendo
Últimos aprendizados e inovações na Caelum
Postado em 27. mai, 2010 por Anderson Leite.
Inovação é parte fundamental da missão da Caelum. E, como uma empresa de treinamentos, Ensinar e Aprender são nosso dia a dia. Muitos nos perguntam o que devem estudar no seu tempo livre, onde devem investir. A Caelum tem seguido várias linhas e iniciativas que eu gostaria de apresentar nesse post. De tempos em tempos, more »
Continue Lendo
Logar é preciso, debugar não é preciso?
Postado em 27. mai, 2010 por Paulo Silveira.
Muitas vezes você percebe que está debugando o mesmo trecho de código incessantemente: horas são gastas tentando procurar o erro, checando variáveis, adicionando e removendo break points e até adicionando complexos alarmes condicionais. Ferramentas como o Netbeans e o Eclipse facilitam muito esse trabalho, mesmo quando ele é feito remotamente, o que é ainda mais more »
Continue Lendo
As dependências do Hibernate 3.5 e 3.6
Postado em 14. abr, 2010 por Paulo Silveira.
O primeiro desafio de um iniciante em Hibernate, antes mesmo de fazer um tutorial prático, como o disponível na apostila FJ-21 da Caelum, é organizar as dependências necessárias. Até o Hibernate 3.3, a maneira a qual ele era distribuído dava trabalho pra quem precisasse usar a JPA: além do zip contendo o hibernate, era necessário more »
Continue Lendo
Nova apostila FJ-21 liberada, InfoQ e Comunidade
Postado em 10. fev, 2010 por Lucas Souza.
Esse mês o trabalho da Caelum em conjunto com a comunidade foi bastante intenso. O GUJ e o PortalJava se uniram, e, juntamente com a Giran, fizemos a migração da base de usuários e de posts, totalizando quase um milhão de mensagens nos fóruns. A Caelum nasceu destas comunidades e ficamos muito contentes em poder more »
ASSINE NOSSO RSS



