Gerenciando Recursos Estáticos em Aplicações Spring MVC
Ao desenvolver aplicações web com Spring MVC, um desafio comum surge quando o DispatcherServlet é configurado para interceptar todas as requisições (por exemplo, usando um padrão de URL como /). Nesses casos, os arquivos estáticos, como imagens, folhas de estilo CSS e scripts JavaScript, também são interceptados pelo Spring, resultando em erros ...
Publicado em 7-25 15:56
Exibindo Projetos Web em Iframes com Arquivos Armazenados no Banco de Dados
Em um projeto recente, enfrentamos o desafio de:
Para projetos frontend fornecidos por terceiros, contendo CSS, JS, HTML, imagens e outros recursos, precisávamos armazenar esses projetos em um banco de dados e exibi-los em um iframe. Além disso, os recursos referenciados pelo HTML (como scripts e folhas de estilo) também precisavam ser carregad ...
Publicado em 7-24 22:20
Construção de Aplicação SSM com Maven - Exemplo Prático
Este tutorial demonstra a construção de uma aplicação SSM (Spring + Spring MVC + MyBatis) utilizando Maven para gerenciamento de dependências. O objetivo é implementar uma funcionaildade que consulta informações de um produto pelo seu identificador.
Preparação do Banco de Dados
Crie o banco de dados ssmtest e a tabela item com o script SQL a ...
Publicado em 7-21 10:32
对比 entre filtros e interceptadores em Java/Spring
No desenvolvimento com Java EE e Spring, filtros e interceptadores desempenham papéis importantes no processamento de requisições, mas possuem diferenças fundamentais em sua implementação e aplicação.
Diferenças Conceituais
Filtros são baseados em um mecanismo de funções de retorno (callback), enquanto interceptadores utilizam reflexão Java.
F ...
Publicado em 7-20 04:14
Spring MVC: Edição de Produtos e Tipos de Retorno do Controlador
Cenário de Negócio
O fluxo operacional para edição de um produto segue estas etapas:
O usuário acessa a listagem de produtos disponíveis
Ao clicar em um item, a página de edição é carregada com os dados recuperados do banco
Após alterar as informações, o usuário confirma o envio do formulário
Mapeamento de Consulta no MyBatis
O arquivo de map ...
Publicado em 7-19 06:19
Prevenção de Submissão Duplicada com Spring MVC
Prevenção de Submissão Duplicada com Spring MVC
Em aplicações web, submissões repetidas de formulários podem causar prbolemas como inserções de dados múltiplas. Uma abordagem eficaz envolve o uso de tokens únicos associados à sessão do usuário, gerenicados por um enterceptor no Spring MVC para validar requisições e bloquear duplicatas.
Princípi ...
Publicado em 7-17 16:42
Como Receber e Processar Dados entre Páginas no Layui com Paginação no Servidor
Enviando Dados para uma Nova Página via URL
Ao abrir uma nova janela ou aba no Layui usando layer.open, é possível transmitir parâmetros diretamente na URL. O exemplo abaixo ilustra como passar o tipo de operação e identificadores:
layer.open({
type: 2,
title: 'Gerenciar Projeto',
shadeClose: false,
shade: [0.3],
m ...
Publicado em 7-13 07:27
Autorização com Shiro e Desenvolvimento Baseado em Anotações
Objetivo:
Este artigo aborda a implementação de autorização utilizando o framework Apache Shiro e desenvolvimento baseado em anotações para controle de acesso em aplicações web.
Autorização com Shiro
Primeiramente, projetamos a estrutura de tabelas para o sistema de permissões do Shiro:
Camada de Mapper
A interface ShiroUserMapper define os mét ...
Publicado em 7-9 21:42
Validação Declarativa de Dados no Spring MVC
Validação Declarativa
O Spring MVC integra o Bean Validation (JSR-303) desde a versão 3, permitindo validar objetos de comando diretamente por anotações. Abaixo está o passo a passo para ativar e usar esse recurso.
Dependências Necessárias
Usaremos o Hibernate Validator como implementação de referência. Adicione os seguintes JARs ao classpath d ...
Publicado em 7-4 16:08
Interceptores e Filtros no Spring MVC
Spring Interceptores
Visão Geral dos Interceptores
Os interceptores no Spring são baseados na técnica de Programação Orientada a Aspectos (AOP), funcionando sobretudo através de proxies. Eles atuam nas requisições da camada de controladores (Controller), permitindo, por exemplo, a verificação de permissões de acesso a endpoints.
Implementação d ...
Publicado em 7-3 23:59