Exemplo de Caixa de Banco

Pequeno exemplo em Java de um caixa de banco usando banco de dados MySql
Usando arquitetura DAO(Data Access Object) e TO (Transfer Object)
Implementação:

 

Saldo
Extrato
Saque
Depósito
Transferência
Notas na Gaveta do Caixa
Relatório de Depósitos
Relatório de Saques

Saques: valida se tem saldo disponivel, o limite disponivel para saque, e as notas que serão retiradas do caixa atualizando as notas na gaveta

Usando Transação com banco de dados.