Professional Documents
Culture Documents
CRUD Com Swing
CRUD Com Swing
funcionalidade de login. Neste exemplo, os dados do usuário e os dados da entidade “Person” são
tratados separadamente. Lembre-se de que este exemplo usa uma abordagem de armazenamento
temporário e não deve ser usado em um ambiente de produção real.
1. **Classe `User`:**
```java
This.username = username;
This.password = password;
Return username;
Return password;
```
2. **Classe `Person`:**
```java
This.name = name;
This.age = age;
Return name;
Return age;
```
3. **Classe `UserRepository`:**
```java
Import java.util.ArrayList;
Import java.util.List;
Users.add(user);
Return true;
}
Return false;
```
4. **Classe `PersonRepository`:**
```java
Import java.util.ArrayList;
Import java.util.List;
Persons.add(person);
Persons.set(index, updatedPerson);
Persons.remove(index);
}
```
5. **Classe `LoginApp`:**
```java
Import javax.swing.*;
Import java.awt.*;
Import java.awt.event.ActionEvent;
Import java.awt.event.ActionListener;
Public LoginApp() {
setTitle(“Login”);
setSize(300, 150);
setDefaultCloseOperation(Jframe.EXIT_ON_CLOSE);
loginButton.addActionListener(new ActionListener() {
@Override
Login();
});
Panel.add(new Jlabel(“Username:”));
Panel.add(usernameField);
Panel.add(new Jlabel(“Password:”));
Panel.add(passwordField);
Panel.add(loginButton);
Add(panel);
setVisible(true);
If (UserRepository.validateUser(username, password)) {
New CRUDApp();
} else {
SwingUtilities.invokeLater(new Runnable() {
@Override
New LoginApp();
});
```
6. **Classe `CRUDApp`:**
```java
Import javax.swing.*;
Import java.awt.*;
Import java.awt.event.ActionEvent;
Import java.awt.event.ActionListener;
Import java.util.List;
Public CRUDApp() {
setTitle(“CRUD App”);
setSize(400, 300);
setDefaultCloseOperation(Jframe.EXIT_ON_CLOSE);
addButton.addActionListener(new ActionListener() {
@Override
addPerson();
});
updateButton.addActionListener(new ActionListener() {
@Override
updatePerson();
});
deleteButton.addActionListener(new ActionListener() {
@Override
deletePerson();
});
inputPanel.add(nameTextField);
inputPanel.add(ageTextField);
buttonPanel.add(addButton);
buttonPanel.add(updateButton);
buttonPanel.add(deleteButton);
add(inputPanel, “North”);
add(buttonPanel, “South”);
loadPersons();
setVisible(true);
}
PersonRepository.addPerson(person);
updateList();
clearFields();
If (selectedIndex != -1) {
PersonRepository.updatePerson(selectedIndex, updatedPerson);
updateList();
clearFields();
If (selectedIndex != -1) {
PersonRepository.deletePerson(selectedIndex);
updateList();
clearFields();
}
listModel.clear();
listModel.addElement(person.getName() + “ – “ + person.getAge());
nameTextField.setText(“”);
ageTextField.setText(“”);
personJList.clearSelection();
updateList();
```