Olá. Estou criando um sistema para controle de biblioteca.
Estou utilizando Hibernate, NetBeans e SQL Server 2008.
Estou com dúvidas de como faço os métodos para realização de empréstimos.
Na interface gráfica tenho campos que:
[list]Recebem o nome do aluno em um Jcombox;[/list]
[list]Recebem o nome do exemplar em um Jcombox e lança para uma Jtable (Isso eu ainda não consegui fazer… );[/list]
[list]Indica a data de Emprestimo em uma Jtextfield;[/list]
[list]Indica a data de devolução em uma Jtextfield.[/list]
Tenho muitas dúvidas com relação aos métodos de empréstimo,
primeiro quero saber se tem como criar um método que pegue o código do usuário a partir de seu nome.
E como cadastrar os exemplares em um empréstimo, por exemplo, (sabendo que o usuário pode pegar ate 3 livros). Como faço isso? Uso o hibernate e ele usa um Collection.
veja os códigos que tentei fazer:
[code]private Emprestimo NovoEmprestimo;
List obras;
List usuarios;
int i;
DefaultTableModel TmObras;
private void AddObra() {
TmObras = (DefaultTableModel) jTable1.getModel();
Session session = HibernateUtil.getSessionFactory().openSession();
session.beginTransaction();
obras = session.createQuery("FROM Obra where CodObra = " + jTextField4.getText().trim()).list();
while (TmObras.getRowCount() > 0) {
TmObras.removeRow(0);
}
if (obras.isEmpty()) {
JOptionPane.showMessageDialog(null, "Nenhum Obra encontrada.");
} else {
String[] campos = new String[]{null, null};
for (int j = 0; j < obras.size(); j++) {
TmObras.addRow(campos);
TmObras.setValueAt(obras.get(j).getCodObra(), j, 0);
TmObras.setValueAt(obras.get(j).getTitulo(), j, 1);
}
}
session.close();
}
public Emprestimo preencherCamposEmprestimo(Emprestimo emprestimo) {
Usuario usuario = new Usuario();
ArrayList<Exemplar> exemplares = null;
emprestimo.setCodUsuario(usuario);
//emprestimo.setDaEmprestimo();
// emprestimo.setDaDevolucao();
emprestimo.setExemplar(exemplares);
return emprestimo;
}
private void ListarUsuario() {
Session session = HibernateUtil.getSessionFactory().openSession();
session.beginTransaction();
usuarios = session.createQuery("FROM Usuario").list();
if (usuarios.isEmpty()) {
JOptionPane.showMessageDialog(null, "Nenhum registro de Usuário foi encontrado.");
} else {
jComboBox1.removeAllItems();
for (int i = 0; i < usuarios.size(); i++) {
jComboBox1.addItem(usuarios.get(i).getNome());
}
session.close();
}
}
private void MostrarDataEmprestimoAtual() {
String data = (new java.text.SimpleDateFormat("dd/MM/yyyy").format(new java.util.Date(System.currentTimeMillis())));
// O método setPlaceholderCharacter('_'); Define o lugar onde o usuário deve preencher.
mascara.setPlaceholderCharacter('_');
JFormattedTextField jtf = new JFormattedTextField(mascara);
jFormattedTextField1.setText(data);
}
}[/code]