Ir ao conteúdo

Posts recomendados

Postado

quando eu crio o objeto igreja ele esta dando nullpointException. Não sei porque

 

O IgrejaDAO

package dao;

import java.sql.Connection;
import java.sql.PreparedStatement;



import conexao.Conexaofactory;
import modelo.Igreja;

public class IgrejaDAO extends Conexaofactory {
	
	public void inserir(Igreja igreja){
		Connection conn =null;
		PreparedStatement stat = null;
		StringBuilder sb = new StringBuilder();
		sb.append("INSERT INTO igreja (id_igreja,id_estilo,id_bairro,anoconstru,id_pontoturistico) ");
		sb.append("VALUES (?,?,?,?,?");
		try {
			conn = getConexao();
			stat = conn.prepareStatement(sb.toString());
			stat.setInt(1, igreja.getId_igreja());
			stat.setInt(2, igreja.getEstiloigreja().getId_estilo());
			stat.setInt(3, igreja.getBairro().getId_bairro());
			stat.setString(4, igreja.getAnoConstru());
			stat.setInt(6, igreja.getId_pontoTuristico());
			stat.executeQuery();
		} catch (Exception e) {
			// TODO: handle exception
		}
	}
	

}

Os modelos Igreja

 

package modelo;

public class Igreja extends PontoTuristico {

	
	private String anoConstru;
	private int id_igreja;
	private  Estiloigreja estiloigreja;
	private Bairro bairro;
	
	public String getAnoConstru() {
		return anoConstru;
	}
	public void setAnoConstru(String anoConstru) {
		this.anoConstru = anoConstru;
	}
	public int getId_igreja() {
		return id_igreja;
	}
	public void setId_igreja(int id_igreja) {
		this.id_igreja = id_igreja;
	}
	public Estiloigreja getEstiloigreja() {
		return estiloigreja;
	}
	public void setEstiloigreja(Estiloigreja estiloigreja) {
		this.estiloigreja = estiloigreja;
	}
	public Bairro getBairro() {
		return bairro;
	}
	public void setBairro(Bairro bairro) {
		this.bairro = bairro;
	}
	
	
	

}

Modelo Bairro

 

package modelo;

public class Bairro {

	private int id_bairro;
	private String descricao;

	
	public int getId_bairro() {
		return id_bairro;
	}
	public void setId_bairro(int id_bairro) {
		this.id_bairro = id_bairro;
	}
	public String getDescricao() {
		return descricao;
	}
	public void setDescricao(String descricao) {
		this.descricao = descricao;
	}
	
	
}

modelo EstiloIgreja 

package modelo;

public class Estiloigreja {
	
	private int id_estilo;
	private String estiloarquitetural;
	
	public int getId_estilo() {
		return id_estilo;
	}
	public void setId_estilo(int id_estilo) {
		this.id_estilo = id_estilo;
	}
	public String getEstiloarquitetural() {
		return estiloarquitetural;
	}
	public void setEstiloarquitetural(String estiloarquitetural) {
		this.estiloarquitetural = estiloarquitetural;
	}
	
	
	
}

A classe que Igreja extends

package modelo;

public class PontoTuristico {
	
	private String nome;
	private int id_pontoTuristico;
	public String getNome() {
		return nome;
	}
	public void setNome(String nome) {
		this.nome = nome;
	}
	public int getId_pontoTuristico() {
		return id_pontoTuristico;
	}
	public void setId_pontoTuristico(int id_pontoTuristico) {
		this.id_pontoTuristico = id_pontoTuristico;
	}
	
	
}

Testando para ver se vai inserir no banco mas só q da nullPoinner antes de chegar na igrejaDao.inserir

Da problema aqui 

// igreja.getBairro().setId_bairro(1);

igreja.getBairro().setId_bairro(bairro.getId_bairro());

 

package testeApp;

import dao.IgrejaDAO;
import modelo.Bairro;
import modelo.Estiloigreja;
import modelo.Igreja;

public class App {

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		
		Estiloigreja estiloigreja = new Estiloigreja();
		Bairro bairro = new Bairro();
		Igreja igreja = new Igreja();
		IgrejaDAO igrejaDAO = new IgrejaDAO();
		bairro.setDescricao("Centro");
		bairro.setId_bairro(1);
		estiloigreja.setId_estilo(1);
		
		igreja.setAnoConstru("1985");
//		igreja.getBairro().setId_bairro(1);
		igreja.getBairro().setId_bairro(bairro.getId_bairro());
//		igreja.getEstiloigreja().setId_estilo(1);	
		igreja.getEstiloigreja().setId_estilo(estiloigreja.getId_estilo());
		igreja.setId_igreja(8);
		igreja.setId_pontoTuristico(1);
		
		igrejaDAO.inserir(igreja);
	}

}

 

Postado

O NPE (NullPointerException) ocorre no bairro e não na igreja:

igreja.get << aqui está ok
igreja.getBairro().set << aqui dá NPE, bairro é nulo

Você possui uma instância de Igreja e uma instância de Bairro, mas a instância de Bairro não é adicionada na instância de Igreja, e o mesmo irá ocorrer com EstiloIgreja.

 

 

Visitante
Este tópico está impedido de receber novas respostas.

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...