Xiaotang começou a aprender Spring Boot - (5) Integração de exibição de front-end


Na seção anterior, dissemos que já podemos mapear o conteúdo do nosso banco de dados para o nosso front-end através do mybatis.
insira a descrição da imagem aqui
Neste momento, os alunos cuidadosos descobrirão e exibiremos todas as informações para o nosso front-end. Usuários , isso definitivamente não é aceitável! Mas não consigo modificar nossa classe, desta forma, a declaração que recebemos do Mysql está faltando, então temos nossa integração de portas.
A ideia básica é recriar uma aula que queremos mostrar aos outros, e depois copiar nossos valores para ele

Primeiro, crie uma classe de exibição de front-end

Nesse caso, a classe de continuação do nosso banco de dados anterior é a mesma, mas desta vez, escrevemos apenas o conteúdo da classe que queremos que os outros vejam. Para distinguir melhor o conteúdo obtido dos front-ends e back-ends, criamos nossa classe de exibição de front-end sob o domínio.Você
insira a descrição da imagem aqui
pode ver que temos menos senha do que antes.

package com.example.test.domain.dto;

public class Test1dto {
    
    
    private Integer id;

    private String name;


    public Integer getId() {
    
    
        return id;
    }

    public void setId(Integer id) {
    
    
        this.id = id;
    }

    public String getName() {
    
    
        return name;
    }

    public void setName(String name) {
    
    
        this.name = name;
    }


    @Override
    public String toString() {
    
    
        StringBuilder sb = new StringBuilder();
        sb.append(getClass().getSimpleName());
        sb.append(" [");
        sb.append("Hash = ").append(hashCode());
        sb.append(", id=").append(id);
        sb.append(", name=").append(name);
        sb.append("]");
        return sb.toString();
    }
}

2. Julgamento

Como redefinimos nosso valor para nossa classe de exibição de front-end, neste momento nos preocupamos que às vezes ela cometa um erro, então também precisamos de uma classe de julgamento para garantir que possamos retornar
normalmente.
insira a descrição da imagem aqui
são as regras, tostring, get method, set method, há outro ponto para prestar atenção, pois podemos exibir informações diferentes de acordo com pessoas diferentes, então precisamos adicionar um paradigma antes dessa função
insira a descrição da imagem aqui

package com.example.test.resp;

public class CommonResp<T> {
    
    
    private boolean success=true;
    private String message;
    private String codo;
    private T content;

    public boolean isSuccess() {
    
    
        return success;
    }

    public void setSuccess(boolean success) {
    
    
        this.success = success;
    }

    public String getMessage() {
    
    
        return message;
    }

    public void setMessage(String message) {
    
    
        this.message = message;
    }

    public String getCodo() {
    
    
        return codo;
    }

    public void setCodo(String codo) {
    
    
        this.codo = codo;
    }

    public T getContent() {
    
    
        return content;
    }

    public void setContent(T content) {
    
    
        this.content = content;
    }

    @Override
    public String toString() {
    
    
        return "CommonResp{" +
                "success=" + success +
                ", message='" + message + '\'' +
                ", codo='" + codo + '\'' +
                ", content=" + content +
                '}';
    }
}

3. Reescreva a camada de serviço

Aqui tomamos list() como exemplo, porque queremos encapsular a lista que escrevemos na classe de julgamento que acabamos de criar, então primeiro reescreva nosso tipo de retorno para CommonResp e depois transfira os dados obtidos por nosso backend nele. conversão, vamos ver o código específico

public CommonResp list()//改写获取判断类
    {
    
    
        CommonResp commonResp=new CommonResp();
        List<Test1> test1s= test1Mapper.selectByExample(new Test1Example());//获取到我们后台数据
        ArrayList<Test1dto> test1dtos=new ArrayList<>();//我们前台显示类链表
        for(int i=0,l=test1s.size();i<l;i++)
        {
    
    
            Test1 test1=test1s.get(i);
            Test1dto test1dto=new Test1dto();//单个前台显示类
            BeanUtils.copyProperties(test1,test1dto);//复制给我们的类
            test1dtos.add(test1dto);//加进去
        }
        commonResp.setContent(test1dtos);//返还给我们的判断类
        return commonResp;//返回
    }

Como a nossa está em nossa camada de controle, lembre-se de modificar o tipo de função
insira a descrição da imagem aqui

Em quarto lugar, o efeito

insira a descrição da imagem aqui
insira a descrição da imagem aqui
Esta é a aula de julgamento que escrevemos no início

Acho que você gosta

Origin blog.csdn.net/weixin_52521533/article/details/124081649
Recomendado
Clasificación