O Spring Framework pode agendar tarefas com facilidade quando integrado com o Quartz ou JDK Timer. Como não achei muitos artigos na web, resolvi fazer este post com alguns exemplos utilizando o Quartz Job Scheduler.
Leia o artigo completo »
- Por Bruno Fuster em 20/August/2008
- 1 Comentário »
No Translations
Eis os atalhos que podem evitar alguns “lags” no posicionamento do ponteiro do mouse:
Flex builder shortcuts
http://ic.macromedia.com/ic/files/c88/v199/Flex%20Shortcuts.pdf
Eclipse 3.1 shortcuts
http://eclipse-tools.sourceforge.net/EclipseEmacsKeybindings_3_1.pdf
Mas aqui está a dica que vc gostaria de ouvir antes de ter vasculhado na net: Ctrl+Shift+L lista todos os atalhos envolvidos para a janela aberta. E se fizer a sequência 2 vezes seguidas, vc poderá customizar seus atalhos.
Outro atalho bem legal que vale comentar é Ctrl+3. Este atalho abre uma janela com filtro tipo autocomplete para procurar por qualquer feature do eclipse 3.
abraços
- Por Rodrigo Facholi em 19/August/2008
- Nenhum Comentário »
No Translations
Procurando por soluções de comunicação entre adobe air e java, acabei encontrando o projeto Merapi, que visa fazer uma ponte entre aplicações desktop que utilizam as tecnologias adobe air e java, através de sockets. Por intermédio do projeto merapi alguns problemas podem ser solucionados como controle do hardware e acesso a bibliotecas locais (dll’s, lib’s).
Leia o artigo completo »
- Por Rafael em 7/August/2008
- 1 Comentário »
No Translations
Na segurança estabelecida a partir do JDK 1.2, todo código carregado para a JVM passa por uma política de segurança para que não sejam realizadas operações não-autorizadas na máquina local do usuário. Com a inclusão do conceito de política de segurança é possível estabelecer permissões diferenciadas para as aplicações.
Leia o artigo completo »
- Por Leonardo Cabral em 21/February/2008
- Nenhum Comentário »
No Translations
Algum tempo atrás caímos num grande desafio. Desenvolver uma parte do sistema para o usuário trabalhar desconectado. Sem poder usar o Apollo, pois não estava na versão final e não era homologado pela empresa, e também sem poder instalar um servidor de aplicação na máquina do usuário. Estávamos desesperados, pois a única opção era desenvolver toda a parte do front novamente só que em AWT ou Swing. Agora imagina ter que desenvolver algo parecido com que o flex e capaz de fazer. Eu nem sabia por onde começar, pois nenhum usuário acostumado a usar o flex gostaria de usar uma tela feita nessas tecnologias, pois seria voltar ao passado.
Então num dia inspirado, veio a idéia: se o flex acessa JavaScript e o JavaScript acessa Applet e o Applet não precisa de servidor (executa só com o browser e o plugin do java). Porque não tentamos utilizar isso. Parecia loucura, mas foi isso que foi feito…
Leia o artigo completo »
- Por Leonardo Cabral em 20/February/2008
- 24 Comentários »
No Translations
Quem utiliza Criteria já deve ter precisado utilizar funções aninhadas ( como sum(abs(propriedade)) ). Infelizmente a class Projections não dispoem deste recurso, e a classe que implementa as agregações ( AggregateProjection ) não foi projetada pensando nisso.
Baseado na class AggregateProjection implementei uma solução com um construtor que recebe um array de string com as funções a serem aninhadas na ordem do array
Leia o artigo completo »
- Por Daniel Passos em 4/December/2007
- 1 Comentário »
No Translations
Ontem meu amigo Filipe Sabella queria executar uma função para manipulação de data do Oracle utilizando Criteria. Algo do tipo funcao_do_oracle( columa ) = ?
O Hibernate não implementa esse tipo de funcionalidade, mas por ter seu desenvolvimento baseado em interfaces lhe possibilita extender / criar (quase) toda e qualquer funcionalidade que deseje. Depois de dar o caminho das pedras, dizendo que era "so" implementar Criterion e algumas alterações para deixarmos a mesma compativel com 1.4 chegamos a seguinte solução:
JAVA:
-
package br.com.dclick.hibernate.criterion.oracle;
-
-
import org.hibernate.Criteria;
-
import org.hibernate.EntityMode;
-
import org.hibernate.Hibernate;
-
import org.hibernate.HibernateException;
-
import org.hibernate.criterion.CriteriaQuery;
-
import org.hibernate.criterion.Criterion;
-
import org.hibernate.engine.TypedValue;
-
-
public class ExtractFunctionExpression implements Criterion {
-
-
private static final class ExtractType {
-
-
-
-
private ExtractType
( String function
) {
-
this.function = function;
-
}
-
-
-
return function.toString();
-
}
-
-
}
-
-
public static final ExtractType YEAR = new ExtractType( "YEAR" );
-
public static final ExtractType MONTH = new ExtractType( "MONTH" );
-
public static final ExtractType DAY = new ExtractType( "DAY" );
-
-
-
-
private ExtractType extractType;
-
-
public ExtractFunctionExpression
( String property, ExtractType extractType,
String value
) {
-
this.property = property;
-
this.extractType = extractType;
-
this.value = value;
-
}
-
-
public TypedValue[] getTypedValues( Criteria criteria, CriteriaQuery criteriaQuery ) throws HibernateException {
-
return new TypedValue[] { new TypedValue( Hibernate.STRING, value, EntityMode.POJO ) };
-
}
-
-
public String toSqlString
( Criteria criteria, CriteriaQuery criteriaQuery
) throws HibernateException
{
-
String column = criteriaQuery.
getColumnsUsingProjection( criteria, property
)[ 0 ];
-
return "( extract(" + extractType.toString() + " from " + column + " ) = ? )";
-
}
-
-
}
Pronto. Agora e so adicionar ao seu criterio:
JAVA:
-
HibernateSessionFactory.getSession()
-
.createCriteria(Venda.class)
-
.add( new ExtractFunctionExpression("dataVenda", ExtractFunctionExpression.YEAR, "2007") )
-
.list();
- Por Daniel Passos em 14/November/2007
- Nenhum Comentário »
No Translations