Implemente os componentes de balanço acionado por dados de forma limpa
-
12-12-2019 - |
Pergunta
Eu herdei um aplicativo de manutenção de dados do Java Swing.
Existe um módulo de administração de usuários que possui os principais atributos do usuário em o jpanel principal. Em uma subsidiária, Jtabbedpane existem relacionamentos de detalhe mestre mantidos. por exemplo.Os grupos que o usuário é membro e as organizações que um usuário pode ser associado. Eu preciso ser capaz de cruzar validar tal que o painel da organização só será acessível se o usuário for um membro de um grupo específico.
Qual é a melhor maneira de conseguir isso sem obter o código da interface do usuário do Swing e o código de acesso e gerenciamento de dados amarrados juntos?
Eu posso ver a necessidade de mais desse gerenciamento de componentes dirigidos por dados, de modo que uma maneira genérica de realizar isso é o que estou procurando idealmente.
Solução
Use injeção de dependência e "serviços".Um desses serviços é "CANUSERACCESSGESGPane ()"
A UI recebe o feijão que implementa o serviço injetado sem qualquer conhecimento de onde vem.
O bean não tem ideia em que partes do código é usado.
A configuração do framework DI conectará os dois.