Hibernate sistema de facturación añadir módulo Swing | Java
Vamos a ver un ejemplo de un diálogo que nos permitirá guardar en la tabla módulos los que el programador haya desarrollado, nos quedará de la siguiente forma el JDialog
El siguiente diseño fue realizado con WindowBuilder un plugin de Eclipse IDE,
dependiendo de tus gustos puedes acomodar como mejor te parezca.
public class AddModuleDialog extends JDialog {
private static final long serialVersionUID = 1L;
private boolean moduleAdded;
private JTextField txtName;
private JTextArea txtDescription;
private ResourceBundle bundle;
private MessageUtil messageUtil;
private ValidateData validateData;
private Module module;
private ModuleController moduleController;
public AddModuleDialog() {
bundle = ResourceBundle.getBundle("com/abigsite/facturationsystem/bundle/Bundle");
messageUtil = new MessageUtil();
validateData = new ValidateData();
moduleController = new ModuleController();
initComponents();
}
private void initComponents() {
setDefaultCloseOperation(JDialog.DISPOSE_ON_CLOSE);
setModal(true);
setIconImage(Toolkit.getDefaultToolkit()
.getImage(AddModuleDialog.class.getResource("/com/abigsite/facturationsystem/icon/CompanyIcon.png")));
setResizable(false);
setTitle(bundle.getString("addModuleTitle"));
setBounds(100, 100, 428, 195);
getContentPane().setLayout(null);
}
}
En el código anterior solo creamos el JDialog, WindowBuilder te lo agrega todo
en el constructor pero aquí hemos creado todo en un método initComponents(),
lo demás se te agregará como los JLabel, JTextField y JButton.
Continuando vamos a ver el código que nos permite insertar o persistir en la
base de datos.
private boolean isCorrectData() {
if (!validateData.stringLength(txtName.getText().trim(), 5, 50)) {
messageUtil.errorMessage(bundle.getString("moduleNameErrorMessage"));
return false;
}
if (!validateData.stringLength(txtDescription.getText().trim(), 5, 100)) {
messageUtil.errorMessage(bundle.getString("moduleDescriptionErrorMessage"));
return false;
}
return true;
}
private void setModuleData() {
module = new Module();
module.setName(txtName.getText().trim().toUpperCase());
module.setDescription(txtDescription.getText().trim().toUpperCase());
module.setCreationDate(new Timestamp(new Date().getTime()));
module.setUpdateDate(new Timestamp(new Date().getTime()));
module.setStatus(true);
}
private void saveModule() {
if (isCorrectData()) {
setModuleData();
if (!moduleController.exist(module)) {
moduleController.save(module);
moduleAdded = true;
messageUtil.infoMessage(bundle.getString("recordSaveSuccessMessage"));
dispose();
} else {
messageUtil.errorMessage(bundle.getString("uniqueNameErrorMessage"));
}
}
}
public boolean isModuleAdded() {
return moduleAdded;
}
Antes de guardar hacemos una comprobación de la longitud de las cadenas,
después de eso seteamos la entidad Module.java y comprobamos si ya existe un
módulo almacenado con el mismo nombre, si no es el caso lo guardamos en la
base de datos.
Comentarios
Publicar un comentario