Arquivo da tag: Java

Maven – Executando mas rápido

Maven

Maven

Por padrão o maven executa todos os teste unitários do projeto sempre que você executa o build ( package ) . O problema disto é que algumas vezes apenas precisamos atualizar a aplicação e em alguns dias fazemos isso milhares de vezes.

O maven nos da algumas opções para dinamizar esta execução.

Skiping tests:

Ao executar o maven informando o parâmetro “-Dmaven.skip.test=true” indica que o build deve ser executado sem os testes unitários.

Melhorando o tempo de execução do Maven

Seguem abaixo algumas dicas para melhorar o tempo de execução.

OBS: Algumas destas podem aumentar consideravelmente o uso de CPU.

Sem conectar a internet:

Temos também a opção de forçar o maven a trabalhar offline com o parâmetro “-o“. Por padrão todas as dependências do projeto são salvas localmente como em um serviço de cache, e sendo assim este parâmetro não fará muita diferença.

Ex.:

Para isto é recomendado que antes você execute o seguinte comando para que sejam baixadas todas as dependências e salvas no cache:

Sem logs:

Em algumas situações você pode não querer ver tudo o que o maven esta fazendo. Para isto temos a opção de executa-lo em modo “silencioso” com o parâmetro “-q”.

Ex.:

Multi thread:

É possível especificar a quantidades de threads serão utilizadas no processo de build. Este é um recurso que deve ser utilizado com cautela pois existem muitos fatore que podem influenciar no desempenho do build, como número de núcleos do processador, quantidade de submodulos do projeto e quantidade de tasks a serem executadas dentre outros fatores.

Fontes:

Site oficial

Derby – utilizando auto incremento

Derby embed java database

Derby

O Derby

O Derby é um sistema de banco de dados relacional embarcado no java, isto significa que você não precisa ter um serviço a mais sendo executado na sua maquina para fazer uso do sistema de banco de dados, todo o código é executado na mesma JVM de sua aplicação.

Alguns motivos para utilizar o Derby

  • Rápida instalação e ouço consumo de recursos 2.6MB por instância já considerando o driver.
  • Baseado em Java, JDBC, e SQL padrão.
  • Possibilidade de utilização no modo cliente servidor.
  • Facilidade de instalar e usar.

Criando a tabela com auto-incremento

O auto incremento no derby é um pouco diferente do padrão dos outros banco de dados.
Segue um exemplo que pode ajudar a criar as tabelas de seu novo banco.

Link para o site oficial.

Conectando-se ao banco Derby

Logo do Apache Derby

Introdução

Apache Derby é um sistema de gerenciamento de banco de dados relacional Java que pode ser embutido em programas Java e que possui quase todos os recursos dos grandes SGDBS.

História:

Apache Derby originou-se na Cloudscape Inc, uma start-up de Oakland, California fundada em 1996 para desenvolver tecnologia Java para banco de dados. A primeira versão do motor do banco de dados, foi nomeada JBMS, em 1997. Posteriormente foi renomeada para Cloudscape e novas versões eram desenvolvidas a cada seis meses.
Em 1999 a Informix Software, Inc., comprou a Cloudscape, Inc. Em 2001 a IBM adquiriu os ativos da Informix Software, incluindo a Cloudscape. O banco de dados foi registrado como IBM Cloudscape e suas versões continuaram a ser produzidas, principalmente focando o uso em aplicações embarcadas usando os produtos Java da IBM.
Em agosto de 2004 a IBM contribuiu com o código para a Apache Software Foundation como Derby, um projecto incubado mantido pelo projeto Apache DB. Em julho de 2005 o projeto Derby foi promovido na incubadora do Apache e agora está sendo desenvolvido como um sub projeto do DB, um projeto de alto nível na Apache. Anteriormente à promoção do Derby na incubação, a Sun uniu-se ao projeto Derby com a intenção de usar o Derby como um componente de seus produtos,3 e com o lançamento do Java 6 em dezembro de 2006, a Sun incluiu o Derby no JDK renomeado como Java DB.
Em março de 2008 a IBM anunciou a remoção do produto Cloudscape do mercado, mas continuará contribuindo com o projeto.
Fonte: (wikipedia)

Instalando o Derby

Você pode fazer o download do arquivo jar aqui

OBS: O parâmetro “create=true” informa que se o arquivo nao existir o driver devera cria-lo.

 

Site oficial: Apache Derby.

Atalhos do Eclipse

  Lista com os principais atalhos do Eclipse

Atalho Command
Ctrl+Space Completar o comando
Ctrl+Shft+Space Informação de contexto ( Lista de parâmetros)
Ctrl+C Copiar
Ctrl+X Cortar
Delete Excluir
Ctrl+F Localizar
Ctrl+K Localizar o próximo
Ctrl+Shft+K Localizar Anterior
Ctrl+J Busca incremental
Ctrl+Shft+J Busca incremental reversa
Ctrl+V Colar
Ctrl+1 Resolver
Ctrl+Y Refazer
Alt+Shft+Down Restore Last Selection
Ctrl+A Selecionar tudo
Alt+Shft+Up Seleciona e expande a seleção do bloco atual
Alt+Shft+Right O mesmo que o anterior, so que por elementos
Alt+Shft+Left O mesmo que o anterior, em direção contrária
F2 Exibe a dica
Ctrl+Shft+Insert Mudar para o modo de inserção ( Tecla Insert )
Ctrl+Z Desfazer
Arquivo
Ctrl+W or Ctrl+F4 Fechar
Ctrl+Shft+W Fechar todos
Alt+F4 Sair
Ctrl+N Novo
Alt+Shft+N Exibe o menu popup “Novo”
Ctrl+P Imprimir
Alt+Enter Propriedades
F5 Atualizar
F2 Renomear
Ctrl+S Salvar
Ctrl+Shft+S Salvar todos ( O melhor de todos )
Navigate

Eclipse 3.0

Alt+Left Backward History
Alt+Right Forward History
Ctrl+L Go to Line
Ctrl+Shft+P Go to Matching Bracket
Ctrl+Shft+Down Go to Next Member
Ctrl+Shft+Up Go to Previous Member
Ctrl+Q Last Edit Location
Ctrl+. Next
Ctrl+Alt+H Open Call Hierarchy
F3 Open Declaration
Shft+F2 Open External Javadoc
Ctrl+Shft+R Open Resource
Ctrl+F3 Open Structure
Ctrl+Shft+T Open Type
F4 Open Type Hierarchy
Ctrl+Shft+H Open Type in Hierarchy
Ctrl+, Ctrl+T Quick Hierarchy
Ctrl+O Quick Outline
Projeto
Ctrl+B        Compilar e/ou publicar todos
Refatoração
Alt+Shft+C Mudar a assinatura do método
Alt+Shft+F Converter uma variável local para um Field
Alt+Shft+L Extrair variável local
Alt+Shft+M Extrair método
Alt+Shft+I Inline
Alt+Shft+V Mover – Refactoring
Alt+Shft+Y Refazer – Refactoring
Alt+Shft+T Exibir o menu de refatoração
Alt+Shft+R Renomear
Alt+Shft+Z Desfazer – Refactoring
Executar
F1 1 Depurar a ultima execução
Ctrl+Shft+D Exibir
Ctrl+U Executar
Ctrl+Shft+I Inspecionar
F8 Continuar a execução ( quando parado em brakpoint )
Ctrl+F11 Executar como da ultima vez
Ctrl+R Executar “inline”
F5 Quando em depuração, “aprofunda-se” no método
F6 Continuar sem entrar no método
F7 Executa ate o próximo brakpoint
Ctrl+Shft+B Adiciona ou remove um brakpoint
Busca
Ctrl+G Declaração na área de trabalho ( do eclipse )
Ctrl+Shft+U Ocorrências no arquivo
Ctrl+H Abre a tela de busca
Ctrl+Shft+G Referencias na área de trabalho ( do eclipse)
Fontes
Ctrl+Shft+/ Adiciona um bloco de comentário
Ctrl+Shft+M Adiciona biblioteca
Alt+Shft+J Adicionar comentário no formato javadoc
Ctrl+Shft+F Forma o código fonte
Ctrl+I Identa a linha
Alt+Shft+O Marca as correncias
Ctrl+Shft+O Organiza as importações ( Remove as inúteis ,e adiciona as necessárias)
Ctrl+Shft+ Remove o comentário do block
Alt+Shft+U Remove a anotação
Alt+Shft+S Exibe o menu de código fonte
Ctrl+Shft+C or Ctrl+/ Comenta o trecho selecionado
Edição de texto
Ctrl+Numpad – ( tecla “menos”, “subtração” )Fechar o bloco de código atual
Ctrl+D Exclui a linha inteira
Ctrl+Delete Apaga a próxima palavra
Ctrl+Backspace Apaga a palavra anterior
Ctrl+Alt+Up ( Seta para cima )Duplica a linha, e põe a nova linhas acima ( o mesmo para down )
Ctrl+Numpad + Abre o bloco de código atual
Ctrl+Numpad * Abre todos os blocos de código fechados
Ctrl+Shft+Enter Insere uma nova linha acima, ( mesmo que o cursor esteja no meio do texto )
Shft+Enter Insere uma linha abaixo, mesmo que o cursor esteja no meio do texto ( muito bom )
Alt+Down Move a linha para baixo

Executando scripts Groovy no java

Logo Groovy

Groovy – Introdução

O Groovy é uma linguagem dinâmica de script criada para ser executada na plataforma Java, e não é necessariamente um concorrente do Java mas sim um complemento que torna a plataforma ainda mais forte. Além do beneficio de ser uma linguagem de Script e não precisar ser pre-compilado par que seja executado o Groovy ainda conta com o beneficio de ser completamente integrado com a plataforma Java, isto significa que o seu script pode ter acesso ao escopo interno do sistema Java.

Onde Utilizar ?

Existem situações onde precisamos montar lógica em tempo de execução, o java tem recursos muito bons para trabalhar com reflection, mas quando não é suficiente sentimos falta do bom JavaScript.

Uma das situações onde estes recursos podem ajudar é quando precisamos dar ao usuário final a possibilidade de definir as regras de negocio dinamicamente:

  1. O clientes deve receber um desconto quando comprar um determinada combinação de produtos.
  2. Critério de aprovação de um aluno: “Deve ter uma média maior que 5.5 e ter uma frequência de 70%”
  3. O 500º cliente do dia recebe um desconto especial.

Estes são apenas alguns dos muitos exemplos de regras de negocio que podem mudar de um dia para o outro, e para que nao precisemos criar parametrizações monstruosas ou ter que publicar uma nova versao da aplicação a cada dia podemos deixar estas regras nas mãos dos gestores e quando eles acharem pertinente eles mesmos pode editar as regras como se fosse uma fórmula do Excel.

O Código

Site oficial: Groovy