PAGUE 6 MESES
LEVE 12 MESES
GARANTIR DESCONTO

Fórum sincronizar acessos ao DAO #595350

08/07/2018

0

Senhores boa tarde. Gostaria de uma ajuda. Fiz uma aplicação de agendamento. O cliente escolhe o dia, a hora. A coisa funciona. Mas está dando erros estranhos. Agenda num fim de semana, mesmo sendo um dia bloqueado. agenda mais pessoa que o número de vagas. Coisas assim.
Todo acesso ao banco de dados eu centralizei num classe chama sqlUtil e todos os seus métodos public synchronized static. Mesmo assim estão acontecendo esses erros.
Uso vaadin.
Alguém poderia me dizer qual a forma certa para sincronizar as chamadas à classe dao?
Por exemplo, a view de agendamento precisa salvar os dados usando o método sqlUtil.salvarAgendamento(...). Qual seria a melhor forma?
synchronized (this){
sqlUtil.salvarAgendamento(...)
}
Obrigado pela ajuda.
Abraços
Carlos Silva

Carlos Silva

Responder

Post mais votado

09/07/2018

Olá Carlos,
se os sistema aceitando o agendamento em dias bloqueados ou está agendando mais pessoas que o limite permitido o problema deve ser de regras de negócios e não de sincronizar ou não o método da camada de persistência. Cada usuário que acessa a aplicação tem uma sessão ou contexto único, sendo assim, não tem motivos para sincronizar os métodos de persistência. Isso porque, cada usuário vai ter um novo objeto DAO criado no seu acesso e os métodos fazem parte desse objeto, sendo assim, os demais usuário não precisam entrar em uma fila de threads para acessar o DAO já que eles não dividem o mesmo objeto.

Marcio Souza

Marcio Souza
Responder

Gostei + 2

Mais Posts

13/07/2018

Carlos Silva

Bom dia, Ballem.
Concordo com você. E para o caso do valor negativo, já modifiquei os campos para unsigned. Esta parte está resolvida. Agora estou quebrando a cabeça para solucionar a outra questão.
Obrigado pela força.
Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar