terça-feira, 16 de janeiro de 2018

Spring data JPA usando limit invés de rownum para queries com paginação no Oracle. Como resolver?

Se você utiliza dois bancos diferentes e não pode definir um dialect específico na configuração do hibernate e quando você vai consultar no banco oracle usando paginação ele usa o limit para limitar a consulta ao invés de utilizar o rownum, tem uma solução muito simple. Para resolver isso no spring boot é muito simples:

defina o SQL Dialect para “default” em seu application.properties para permitir que o Spring detecte automaticamente os diferentes dialetos de cada datasource

spring.jpa.database=default

sábado, 13 de janeiro de 2018

Linux Yarn configurar dependências global para serem reconhecidas no seu terminal

Se você instalou uma dependencia globalmente e não está conseguindo usa-la, é porque seu yarn não está configurado no path. Para fazer isso é simples basta editar seu arquivo "~/.bashrc" (Linux) "para windows deve colocar no path do sistema operacional". Não irei aborar windows aqui.

então abra o arquivo ~/.bashrc no seu computador e adicione a seguinte linha no final do arquivo.



pronto. agora basta abrir uma nova janela do seu terminal e todas as dependencias globais estará disponível

terça-feira, 9 de janeiro de 2018

configurar JPA para salvar um Boolean como S/N ao invés de salvar true/false

Isso é muito util para quem trabalha com banco legado que salva um valor boolean como texto mas você gostaria de trabalhar no java com o valor boolean. então vamos lá:

Imagine que você tem uma classe chamada Cliente.java e ela possui um atributo Boolean chamado ativo e deseja que ao salvar o JPA mande pro banco o valor em String 'S' quando for TRUE e 'N' quando for FALSE.

Para isso você precisa criar um Converter da seguinte maneira:



e na sua classe Cliente.java você deve mapear da seguinte maneira:



Pronto feito isso você vai conseguir trabalhar com Boolean em java e no banco vai continuar salvando o valor em String.