Cinco razões para usar o Apache Wicket

Apache Wicket é uma estrutura de desenvolvimento da web Java. Sinto que ele não recebe a atenção que merece. Tenho usado o Wicket profissionalmente para projetos reais nos últimos 6 anos e adoro isso! Nesta postagem, vamos dar uma olhada em cinco motivos pelos quais você deve considerar usá-lo.





1. Gerenciamento de estado simples

A experiência de desenvolvimento de aplicativos Wicket é muito semelhante ao desenvolvimento de desktop. Às vezes você quase esquece que está trabalhando com HTTP, porque não há necessidade de salvar estados. Isso ocorre porque no Wicket, a página da web e todos os seus componentes (botões, caixas de texto, etc.) são objetos Java que mantêm seu próprio estado. O estado do componente é serializado na sessão do usuário e desserializado no momento certo.





Simplificando, digamos que você tenha um formulário com campos que o usuário preenche e envia. Em um aplicativo Wicket, este formulário, seus campos e o botão de envio são componentes (objetos Java) que são criados e adicionados à página da web. Ao clicar no botão enviar:





1. Temos acesso automático à entrada do usuário, geralmente na forma de campos POJO.





2. Não precisamos vincular a solicitação HTTP POST à ​​solicitação GET.





Também não precisamos nos preocupar em preencher os campos do formulário com os valores enviados. Isso é feito usando modelos, que são o conceito central do Wicket.





2. Integração HTML padrão

O HTML no Wicket não requer nenhuma tag especial, ao contrário de alguns outros frameworks. Na verdade, você pode pegar qualquer HTML existente e integrá-lo ao seu aplicativo Wicket com pouca ou nenhuma alteração. Para conectar tags HTML a componentes Wicket, apenas um atributo é necessário: wicket: id



Considere um exemplo:





<div wicket:id="userName">Roman</div>

add(new Label("userName", getUsername()));
      
      



wicket:id "userName"



HTML Wicket. Wicket Label div



. , . , . Wicket HTML / CSS / JS, , React. , .





3. Javascript ( )

- JS. AJAX, Wicket, , JS- . Wicket JQuery JS- -. , . , . Javascript . Wicket -.





4. /

Wicket - . , , . , , . , , , . :





send(getPage(), Broadcast.BREADTH, new CriticalUpdate(target, payload));
      
      



- CriticalUpdate , :





public void onEvent(IEvent event) {    

if (event.getPayload() instanceof CriticalUpdate) { 

      String msg = ((CriticalUpdate)event.getPayload());       //do something with the msg    

  } 

}
      
      



5.

/ Wicket , , . Wicket , . , . - CRUD: . . , , , , . Tudo isso pode ser feito usando código Java e JUnit puro, sem recorrer ao Selenium, Puppeteer ou bibliotecas semelhantes.





Conclusão

Espero que você tenha ouvido o suficiente para dar uma chance ao Wicket. Se você estiver interessado em aprender mais:





  1. Vá para o site oficial para obter uma boa documentação.





  2. Dê uma olhada nos exemplos de código de práticas comuns de desenvolvimento da web.












All Articles