Skip to content

Instantly share code, notes, and snippets.

View kauanmocelin's full-sized avatar

Kauan Mocelin kauanmocelin

View GitHub Profile
@kauanmocelin
kauanmocelin / stream-checked-exception.java
Created November 6, 2024 11:33
Java streams com checked exception usando Failable da apache commons
import org.apache.commons.lang3.function.Failable;
try {
final List<DadosTransacaoDTO> listaDocumentosProcessados = (List<DadosTransacaoDTO>) SessaoUtils.recuperarAtributoSessao(request, response, AtributosSessao.ATRIBUTO_SESSAO_LISTA_DOCUMENTOS);
final boolean possuiItemConfidencial = Optional.ofNullable(listaDocumentosProcessados)
.orElse(Collections.emptyList())
.stream()
.flatMap(Failable.asFunction(dados -> DocumentoFacade.obterDocumentosRelacionados(Utilitarios.formatarIdentificador(dados.getNumeroIdentificador())).stream()))
.anyMatch(item -> NivelAcessoDocumento.CONFIDENCIAL.getCodigo().equals(item.getCodigoRestricao()));
JSONObject respostaJson = new JSONObject()
@kauanmocelin
kauanmocelin / PaymentFactory.java
Created October 22, 2024 12:08
Strategy and Factory com EnumMap
public class PaymentFactory {
private static final Map<PaymentType, PaymentStrategy> strategies = new EnumMap<>(PaymentType.class);
static {
strategies.put(PaymentType.CREDIT_CARD, new CreditCardPayment());
strategies.put(PaymentType.DEBIT_CARD, new DebitCardPayment());
strategies.put(PaymentType.CRYPTO, new CryptoPayment());
}
public static PaymentStrategy getPaymentStrategy(PaymentType paymentType) {
@kauanmocelin
kauanmocelin / redirecionarParaOutraAction.java
Last active January 12, 2023 12:32
[Redirecionar actions passando parâmetros direto pro form] O form relacionado a action EncaminharProcesso irá receber automaticamente os parâmetros definidos no ActionRedirect #struts
DistribuirProtocoloForm distribuirProtocoloForm = (DistribuirProtocoloForm) form;
distribuirProtocoloForm.setAcaoRetorno(ACAO_VOLTAR_ESPECIFICO);
setUcsRetorno(distribuirProtocoloForm, "retornoDistribuirProtocolo", request, response);
ActionRedirect redirect = new ActionRedirect(mapping.findForward("ucsEncaminharProcesso"));
redirect.addParameter("parecerConclusaoEdit", distribuirProtocoloForm.getComplemento());
Arrays.stream(distribuirProtocoloForm.getListaCod()).forEach(numeroProtocolo -> redirect.addParameter("enclote", numeroProtocolo));
redirect.setRedirect(false);
return redirect;
@kauanmocelin
kauanmocelin / listar_triggers.sql
Created August 31, 2022 19:41
[Oracle listar triggers] #oracle #sql
SELECT owner, trigger_name, table_owner, table_name, triggering_event, trigger_body
FROM all_triggers
WHERE table_name = 'NOME_DA_TABELA';
@kauanmocelin
kauanmocelin / MockLocalDateTime.java
Last active July 12, 2022 20:31
Teste de Unidade - Mockar o tempo - LocalDateTime #teste
@Test
void mockTime() {
LocalDateTime fixed = LocalDateTime.parse("2021-09-29T23:00:00");
try (MockedStatic<LocalDateTime> b = Mockito.mockStatic(LocalDateTime.class)) {
b.when(LocalDateTime::now).thenReturn(fixed);
System.out.println(LocalDateTime.now());
}_
}
@kauanmocelin
kauanmocelin / logger.xml
Last active April 17, 2024 17:12
[Logar parâmetros das querys] #hibernate
<console-handler name="CONSOLE">
<level name="TRACE"/>
<formatter>
<named-formatter name="COLOR-PATTERN"/>
</formatter>
</console-handler>
<logger category="org.hibernate.type">
<level name="TRACE"/>
</logger>
@kauanmocelin
kauanmocelin / script-generate-schema-ddl.java
Last active September 10, 2021 14:14
[Gerar esquema DDL de criação das entidades mapeadas no hibernate.cfg] #java #hibernate
AnnotationConfiguration hibernateConfiguration = new AnnotationConfiguration()
.configure("hibernate.cfg.xml");
Dialect dialect = (Dialect) Class.forName(hibernateConfiguration.getProperty("dialect")).newInstance();
String[] createStatements = hibernateConfiguration.generateSchemaCreationScript(dialect);
Stream<String> statements = Arrays.stream(createStatements);
try (FileOutputStream fos = new FileOutputStream("/home/kauan/sql-create-tables.ddl");
BufferedWriter out = new BufferedWriter(new OutputStreamWriter(fos));) {
@kauanmocelin
kauanmocelin / simples.java
Last active April 6, 2021 20:23
[Agrupar itens de uma string separados por vírgula numa Lista] #java
String str = "joao, maria, fulano";
List<String> nomes = Arrays.asList(str.split(","));
@kauanmocelin
kauanmocelin / main.java
Last active April 6, 2021 20:06
[Juntar itens da lista numa string separados por vírgula] #java
List<String> nomes = new ArrayList<>(Arrays.asList("Kauan", "João", "Maria"));
String nomesSeparadosPorVirgula = StringUtils.join(nomes.toArray(), ",");
@kauanmocelin
kauanmocelin / index.jsp
Last active April 6, 2021 12:17
[Submeter form com lista] Como utilizar uma lista no form #struts
1.Página JSP
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
<%@ taglib uri="http://celepar.pr.gov.br/taglibs/html-2.0" prefix="ch" %>
<%@ taglib uri="http://struts.apache.org/tags-tiles" prefix="tiles" %>
<%@ taglib uri="http://struts.apache.org/tags-html" prefix="html"%>
<%@ taglib uri="http://struts.apache.org/tags-logic" prefix="logic"%>
<%@ taglib uri="http://struts.apache.org/tags-bean" prefix="bean" %>
<html:hidden property="indProcessoCarona" name="incluirDistribuicaoItemForm" />