Добавить пациента в мою систему, но для того, чтобы добавить его, мне нужен основной телефон и ключ адреса [закрыто]JAVA

Программисты JAVA общаются здесь
Ответить Пред. темаСлед. тема
Anonymous
 Добавить пациента в мою систему, но для того, чтобы добавить его, мне нужен основной телефон и ключ адреса [закрыто]

Сообщение Anonymous »

Я пытаюсь добавить пациента в свою систему, но для этого мне нужен основной телефон и ключ адреса. Единственное сообщение, которое я получил, это то, что не удалось найти codTel и codEndereco.
TelefoneDAO.java
package model.dao;

import database.ConexaoBD;
import java.sql.*;
import model.bean.Telefone;

public class TelefoneDAO {
private int generatedKey; // Variável para armazenar a chave gerada

public void createTelefone(Telefone telefone) throws SQLException {
Connection conn = null;
PreparedStatement create = null;

try {
//Obtem conexão com o banco de dados
conn = ConexaoBD.obtemConexao();
//Preparando o SQL para o inserir Paciente
String sql = "INSERT INTO telefone_paciente (celular) VALUES (?)";
create = conn.prepareStatement(sql,Statement.RETURN_GENERATED_KEYS);
create.setString(1, telefone.getNumero());
//Executa a inserção
create.executeUpdate();
// Obtém a chave gerada
ResultSet generatedKeys = create.getGeneratedKeys();
if (generatedKeys.next()) {
generatedKey = generatedKeys.getInt(1);
System.out.println("ID gerado do telefone: " + generatedKey);
}

System.out.println("Telefone inserido com sucesso!");
} catch (SQLException e) {
System.out.println("Erro ao inserir paciente: " + e.getMessage());
}
}

public int getGeneratedKey() {
return generatedKey;
}
}

EnderecoDAO.java
package model.dao;

import database.ConexaoBD;
import java.sql.*;
import model.bean.Endereco;

public class EnderecoDAO {

private int generatedKey; // Variável para armazenar a chave gerada

public void createEndereco(Endereco endereco) throws SQLException {
Connection conn = null;
PreparedStatement create = null;

try {
//Obtem conexão com o banco de dados
conn = ConexaoBD.obtemConexao();
//Preparando o SQL para o inserir Paciente
String sql = "INSERT INTO endereco_paciente (rua, bairro, cidade, estado, cep) VALUES (?,?,?,?,?)";
create = conn.prepareStatement(sql, Statement.RETURN_GENERATED_KEYS);
create.setString(1, endereco.getRua());
create.setString(2, endereco.getBairro());
create.setString(3, endereco.getCidade());
create.setString(4, endereco.getEstado());
create.setInt(5, endereco.getCep());
//Executa a inserção
create.executeUpdate();
// Obtém a chave gerada
ResultSet generatedKeys = create.getGeneratedKeys();
if (generatedKeys.next()) {
generatedKey = generatedKeys.getInt(1);
System.out.println("ID gerado do endereço: " + generatedKey);
}
System.out.println("Endereço inserido com sucesso!");
} catch (SQLException e) {
System.out.println("Erro ao inserir paciente: " + e.getMessage());
}
}

public int getGeneratedKey() {
return generatedKey;
}
}

PacienteDAO.java
package model.dao;

import model.bean.Paciente;
import database.ConexaoBD;
import java.sql.*;

public class PacienteDAO {
//CRUD
public boolean createPaciente(Paciente paciente) throws SQLException {
Connection conn = null;
PreparedStatement create = null;

try {
// Obter conexão com o banco de dados
conn = ConexaoBD.obtemConexao();

// Preparando o SQL para inserir o Paciente
String sql = "INSERT INTO paciente (nome, cpf, email, senha, cod_tel, cod_endereco) VALUES (?,?,?,?,?,?)";
create = conn.prepareStatement(sql);

// Parametros de valor para create
create.setString(1, paciente.getNome());
create.setInt(2, paciente.getCpf());
create.setString(3, paciente.getEmail());
create.setString(4, paciente.getSenha());
create.setInt(5, paciente.getTelefone().getCodTel());
create.setInt(6, paciente.getEndereco().getCodEndereco());

// Executa a inserção
create.executeUpdate();
System.out.println("Paciente inserido com sucesso!");
return true;
} catch (SQLException e) {
System.out.println("Erro ao inserir paciente: " + e.getMessage());
return false;
} finally {
// Fecha os recursos
if (create != null) {
create.close();
}
if (conn != null) {
conn.close();
}
}
}

}

Пессоа.java
package model.bean;

public abstract class Pessoa {

private String nome;
private String email;
private String senha;

//Construtor
public Pessoa() {
}

public Pessoa(String nome, String email, String senha) {
this.nome = nome;
this.email = email;
this.senha = senha;
}

public Pessoa(String email, String senha) {
this.email = email;
this.senha = senha;
}

//Getters & Setters
public String getNome() {
return nome;
}

public void setNome(String nome) {
this.nome = nome;
}

public String getEmail() {
return email;
}

public void setEmail(String email) {
this.email = email;
}

public String getSenha() {
return senha;
}

public void setSenha(String senha) {
this.senha = senha;
}

}

Paciente.java
model.bean;
public class Paciente extends Pessoa {

private int cpf;
private Telefone telefone;
private Endereco endereco;

//Construtor

/*DAO*/
public Paciente(String nome, int cpf, String email, String senha) {
super(nome, email, senha);
this.cpf = cpf;
}

//Getters & Setters
public int getCpf() {
return cpf;
}

public void setCpf(int cpf) {
this.cpf = cpf;
}

public void setTelefone(Telefone telefone) {
this.telefone = telefone;
}

public void setEndereco(Endereco endereco) {
this.endereco = endereco;
}

public Telefone getTelefone() {
return telefone;
}

public Endereco getEndereco() {
return endereco;
}

}

Endereco.java
package model.bean;

public abstract class Endereco {

private int codEndereco;
private String rua;
private String bairro;
private String cidade;
private String estado;
private int cep;

//Construtor
public Endereco() {
}

public Endereco(int codEndereco, String rua, String bairro, String cidade, String estado, int cep) {
this.codEndereco = codEndereco;
this.rua = rua;
this.bairro = bairro;
this.cidade = cidade;
this.estado = estado;
this.cep = cep;
}
//Getters & Setters

public int getCodEndereco() {
return codEndereco;
}

public void setCodEndereco(int codEndereco) {
this.codEndereco = codEndereco;
}

public String getRua() {
return rua;
}

public void setRua(String rua) {
this.rua = rua;
}

public String getBairro() {
return bairro;
}

public void setBairro(String bairro) {
this.bairro = bairro;
}

public String getCidade() {
return cidade;
}

public void setCidade(String cidade) {
this.cidade = cidade;
}

public String getEstado() {
return estado;
}

public void setEstado(String estado) {
this.estado = estado;
}

public int getCep() {
return cep;
}

public void setCep(int cep) {
this.cep = cep;
}

}

Telefone.java
package model.bean;

public abstract class Telefone {

private int codTel;
private String numero;

//Construtor
public Telefone() {
}

public Telefone(int codTel, String numero) {
this.codTel = codTel;
this.numero = numero;
}

//Getters & Setters
public int getCodTel() {
return codTel;
}

public void setCodTel(int codTel) {
this.codTel = codTel;
}

public String getNumero() {
return numero;
}

public void setNumero(String numero) {
this.numero = numero;
}

}

Я использую этот метод для получения данных.
Paciente.java (форма)
private void btnProximaTelaActionPerformed(java.awt.event.ActionEvent evt) {
// Identificando Dados Inseridos
String nome = txtNome.getText();
String email = txtEmail.getText();
int cpf = Integer.parseInt(txtCpf.getText());
String senha1 = new String(senhaPasswordField1.getPassword());
String senha2 = new String(senhaPasswordField2.getPassword());

try {
if (senha1.equals(senha2)) {
Paciente paciente = new Paciente(nome, cpf, email, senha1);
PacienteDAO pacientedao = new PacienteDAO();
pacientedao.createPaciente(paciente);
System.out.println("Paciente inserido com sucesso");
JOptionPane.showMessageDialog(null, "Inserido com sucesso.");
} else {
JOptionPane.showMessageDialog(null, "Suas senhas estão diferentes. Tente novamente.");
}
System.out.println("Dados Salvos com sucesso");
} catch (Exception e) {
System.out.println("Não foi possível inserir: " + e.getMessage());
}

}

Telefone.java (форма)
private void btnCriarContaActionPerformed(java.awt.event.ActionEvent evt) {
String celular = txtCelular.getText();
String celular1 = txtCelular1.getText();
try {
if (celular.equals(celular1)) {
Telefone telefone = new Telefone(0,celular) {
};
TelefoneDAO telefonedao = new TelefoneDAO();
telefonedao.createTelefone(telefone);
System.out.println("Telefone cadastrado. Aguardando outros dados.");
} else {
JOptionPane.showMessageDialog(null, "Números não coincidem. Tente novamente.");
}
InsertAddressPaciente clickNextPage = new InsertAddressPaciente();
clickNextPage.setVisible(true);
this.dispose();

} catch (Exception e) {
System.out.println("Não foi possivel inserir" + e.getMessage());
}
}

Endereco.java(форма)
private void btnCriarContaActionPerformed(java.awt.event.ActionEvent evt) {
//Identificando Dados Inseridos
String rua = txtRua.getText();
String bairro = txtBairro.getText();
String cidade = txtCidade.getText();
String estado = txtEstado.getText();
int cep = Integer.parseInt(txtCep.getText());
try {
Endereco endereco = new Endereco(0,rua, bairro, cidade, estado, cep) {};
EnderecoDAO enderecodao = new EnderecoDAO();
enderecodao.createEndereco(endereco);
InsertPersonalDataPaciente clickNextPage = new InsertPersonalDataPaciente();
clickNextPage.setVisible(true);
this.dispose();
System.out.println("Enderço Salvos com sucesso.");
} catch (Exception e) {
System.out.println("Não foi possivel inserir");
}
}


Подробнее здесь: https://stackoverflow.com/questions/764 ... to-have-th
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «JAVA»