3.5 - Pessoa.java

package br.aiec;

import java.util.Calendar;
import java.util.Date;
import java.util.GregorianCalendar;

public class Pessoa {

    private String nome;
    private Date dataNascimento;

    public String getNome() {
        return nome;
    }

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

    public Date getDataNascimento() {
        return dataNascimento;
    }

    public void setDataNascimento(Date dataNascimento) {
        this.dataNascimento = dataNascimento;
    }
    
    public int getIdade(){
        Calendar hoje = GregorianCalendar.getInstance();
        hoje.setTime(new Date());
        
        Calendar nascimento = GregorianCalendar.getInstance();
        nascimento.setTime(dataNascimento);
        
        int quantidadeAnos = hoje.get(Calendar.YEAR) - nascimento.get(Calendar.YEAR);
        
        nascimento.add(Calendar.YEAR, quantidadeAnos);
        
        if(nascimento.after(hoje)){
            quantidadeAnos--;
        }
        
        return quantidadeAnos;
    }

}

Observe que, diferentemente do módulo anterior, onde a classe Pessoa possuía as regras de conversão de datas, agora as referidas regras fazem parte da camada lógica de apresentação, conforme poderá ser visualizado na página logo a seguir: “ExibirHistorico.jsp”.

Copyright © 2014 AIEC.