Skip to content

Instantly share code, notes, and snippets.

View nosrednawall's full-sized avatar

Anderson José de Souza Inácio nosrednawall

View GitHub Profile
package br.com.brascov.querocomprar.model.dao;
import java.io.Serializable;
import javax.persistence.EntityManager;
/**
* @author Anderson
*
* classe base que possui os métodos comuns para todas as Daos
@nosrednawall
nosrednawall / namedQuery.java
Created May 29, 2018 16:04
Exemplo de namedquery
@NamedQueries({
@NamedQuery(name = "Lojista.listarTodos", query = "" + "SELECT DISTINCT l FROM Lojista l "
+ "LEFT JOIN FETCH l.endereco " + "LEFT JOIN FETCH l.loja " + "WHERE l.status = :pStatus"),
@NamedQuery(name = "Lojista.find", query = "" + "SELECT DISTINCT l FROM Lojista l "
+ "LEFT JOIN FETCH l.endereco " + "LEFT JOIN FETCH l.loja " + "WHERE l.id = :pId") })
@nosrednawall
nosrednawall / Bidirecional.java
Created May 29, 2018 16:06
Exemplo de mapeamento @onetomany e @manytoone bidirecional
@Entity
@Table(name = "evento")
public class Evento {
// ... Outros campos ...
@ManyToOne
@JoinColumn(name = "categoria_id")
private Categoria categoria;
@nosrednawall
nosrednawall / EnumBinario.java
Created May 29, 2018 16:42
Exemplo de como usar um enum binário
public enum StatusBinarioEnum {
ATIVO,INATIVO;
}
@Enumerated(EnumType.STRING)
@Column(nullable = false, name = "status")
private StatusBinarioEnum status;
@nosrednawall
nosrednawall / EstadosEnum.java
Created May 29, 2018 16:44
Lista de estados do Brasil em enum java
/**
*
* @author anderson
* Enum feito para os estados do Brasil, podendo mudar ou até adicionar indices
*/
public enum EstadosBrasilEnum {
AC,AL,AP,AM,BA,CE,DF,ES,GO,MA,MT,MS,MG,PA,PB,PR,PE,PI,RJ,RN,RS,RO,RR,SC,SP,SE,TO;
}
@nosrednawall
nosrednawall / email.xhtml
Created June 4, 2018 12:47
Validador de email regex jsf
<p:outputLabel value="Email:" for="email" />
<p:inputText id="email" value="#{seuBeanAqui}"
required="true" validatorMessage="Email inválido">
<f:attribute name="type" value="email" />
<f:passThroughAttribute name="placeholder" value="E-mail" />
<f:validateRegex
pattern="[\w\.-]*[a-zA-Z0-9_]@[\w\.-]*[a-zA-Z0-9]\.[a-zA-Z][a-zA-Z\.]*[a-zA-Z]" />
<f:ajax event="blur" render="messageEmail" />
</p:inputText>
@nosrednawall
nosrednawall / _template.xhtml
Created June 4, 2018 12:53
locate pt_BR primefaces
<h:head>
<h:outputScript library="js" name="locale-primefaces.js"/>
</h:head>
<p:outputLabel value="Data Nascimento" for="dataNacimento" />
<p:calendar id="dataNacimento"
value="#{seuBean.entidade.dataNascimento}"
showOn="button"
pattern="dd-MM-yyyy"
navigator="true"
locale="pt_BR"
@nosrednawall
nosrednawall / password.xhtml
Last active June 4, 2018 13:27
password regex validator jsf
<p:outputLabel value="Senha" for="senha" />
<p:password id="senha" value="#{seuBean.entidade.senha}"
feedback="true"
required="true"
requiredMessage="Campo senha não pode estar em branco"
validatorMessage="Senha inválida"
>
<f:attribute name="type" value="password" />
<f:passThroughAttribute name="placeholder" value="No mímino 6 e no máximo 20 caracteres" />
@nosrednawall
nosrednawall / cpfCnpj.xhtml
Last active June 4, 2018 13:53
Validador regex para cpf e cnpj, apenas para quantidade de caracteres
<p:outputLabel value="Cpf/CNPJ " for="cpf" />
<p:inputText id="cpf" value="#{seuBean.entitade.cpfCnpj}"
maxlength="20" required="true"
requiredMessage="Campo cpf não pode estar em branco"
validatorMessage="CPF inválido">
<f:passThroughAttribute name="placeholder" value="Informe o seu CPF ou CNPJ" />
<f:validateRegex
pattern="([0-9]{2}[\.]?[0-9]{3}[\.]?[0-9]{3}[\/]?[0-9]{4}[-]?[0-9]{2})|([0-9]{3}[\.]?[0-9]{3}[\.]?[0-9]{3}[-]?[0-9]{2})" />
<f:ajax event="blur" render="messageCpf" />
@nosrednawall
nosrednawall / BaseBean.java
Created June 4, 2018 14:37
Restrição de idade por enum
public abstract class BaseBean implements Serializable {
/**
*
*/
private static final long serialVersionUID = 1L;
public Date getMinAge() {
Calendar currentDate = Calendar.getInstance();
currentDate.add(Calendar.YEAR, - DatasLimiteEnum.IdadeMinima.getIdadeNumeral());
logger.info("Min Age: " + currentDate.get(Calendar.MONTH) + "/" + currentDate.get(Calendar.DATE) + "/"