Importante

Você está vendo a versão anterior da nova experiência da Alura que estamos preparando para você. Em breve, ela ganha uma identidade visual novinha totalmente pensada em potencializar seus estudos!

1
resposta

Receber dados no input com thymeleaf e retornar resultado pra tela

Boa tarde, gostaria de saber como recebo inputs do usuário, processo isso na classe java e depois retorno na tela html usando thymeleaf. Meu código html:

<div class="card mt-3">
            <form div class="card-body">

                <div>
                    <input type="radio" id="1" name="sexo" value="masculino" checked></input>
                    <label for="masculino">Homem</label>
                    <input type="radio" id="2" name="sexo" value="feminino"></input>
                    <label for="feminino">Mulher</label>
                </div>

                <div>
                    <label for="idade">Idade</label>
                    <input type="text" id="idade" name="idade" class="form-control"></input>
                </div>

                <div>
                    <label for="triceps">Tríceps</label>
                    <input type="text" id="triceps" name="triceps" class="form-control"></input>
                </div>

                <div>
                    <label for="peitoral">Peitoral</label>
                    <input type="text" id="peitoral" name="peitoral" class="form-control"></input>
                </div>

                <div>
                    <label for="axilar">Axilar</label>
                    <input type="text" id="axilar" name="axilar" class="form-control"></input>
                </div>

                <div>
                    <label for="abdominal">Abdominal</label>
                    <input type="text" id="abdominal" name="abdominal" class="form-control"></input>
                </div>

                <div>
                    <label for="subscapular">Subscapular</label>
                    <input type="text" id="subscapular" name="subscapular" class="form-control"></input>
                </div>

                <div>
                    <label for="supraIliaca">Supra Ilíaca</label>
                    <input type="text" id="supraIliaca" name="supraIliaca" class="form-control"></input>
                </div>

                <div>
                    <label for="coxa">Coxa</label>
                    <input type="text" id="coxa" name="coxa" class="form-control"></input>
                </div>

                <div class="mt-3">
                    <label for="percentual">Percentual de Gordura: </label>
                </div>    

            </form>
        </div>

minha classe java:

public class PercentualGordura {

    private Integer idade;
    private Integer sexo;
    private Double triceps;
    private Double peitoral;
    private Double axilar;
    private Double abdominal;
    private Double subscapular;
    private Double supraIliaca;
    private Double coxa;

    public Integer getIdade() {
        return idade;
    }

    public void setIdade(Integer idade) {
        this.idade = idade;
    }

    public Integer getSexo() {
        return sexo;
    }

    public void setSexo(Integer sexo) {
        this.sexo = sexo;
    }

    public Double getTriceps() {
        return triceps;
    }

    public void setTriceps(Double triceps) {
        this.triceps = triceps;
    }

    public Double getPeitoral() {
        return peitoral;
    }

    public void setPeitoral(Double peitoral) {
        this.peitoral = peitoral;
    }

    public Double getAxilar() {
        return axilar;
    }

    public void setAxilar(Double axilar) {
        this.axilar = axilar;
    }

    public Double getAbdominal() {
        return abdominal;
    }

    public void setAbdominal(Double abdominal) {
        this.abdominal = abdominal;
    }

    public Double getSubscapular() {
        return subscapular;
    }

    public void setSubscapular(Double subscapular) {
        this.subscapular = subscapular;
    }

    public Double getSupraIliaca() {
        return supraIliaca;
    }

    public void setSupraIliaca(Double supraIlaaca) {
        this.supraIliaca = supraIlaaca;
    }

    public Double getCoxa() {
        return coxa;
    }

    public void setCoxa(Double coxa) {
        this.coxa = coxa;
    }

    public Double somaDasDobras() {
        return triceps + peitoral + axilar + abdominal + subscapular + supraIliaca + coxa;
    }

    public Double somaDasDobrasAoQuadrado() {
        return Math.pow(somaDasDobras(), 2);
    }

    public Double densidadeCorporal() {

        Double densidadeCorporal;

        if (sexo == 1) {
            densidadeCorporal = 1.112d - (0.00043499d * somaDasDobras()) + (0.00000055d * 
                    somaDasDobrasAoQuadrado()) - (0.00028826d * (double) idade);
        } else {
            densidadeCorporal = 1.097d - (0.00046971d * somaDasDobras()) + (0.00000056d *
                    somaDasDobrasAoQuadrado()) - (0.00012828d * (double) idade);
        }

        return densidadeCorporal;
    }

    public Double porcentagemGorduraCorporal() {

        Double porcentagemGordura;

        if(sexo == 1) {
            porcentagemGordura = ((4.95d/densidadeCorporal()) - 4.5d) * 100d;
        }else {
            porcentagemGordura = (5.03d/densidadeCorporal()) - 4.59d * 100d;
        }

        return porcentagemGordura;
    }

}
1 resposta

No caso queria receber esses dados e através do método porcentagemGorduraCorporal() retornar esse resultado pra tela do usuário.