1
resposta

Integração de uma API em java com o Angular

Olá. Desenvolvi uma API em Java baseada no curso de vocês e preciso integrar com o Angular , pelo que vi eu preciso configurar o arquivo db.json. Como eu confuguro esse arquivo já que a API está na pasta c:\teste? Onde eu crio a aplicação angular? Obrigado.

1 resposta

Bom dia.

1. Sobre o arquivo db.json

Você não precisa usar o db.json se já tem uma API feita em Java. Esse arquivo só é usado quando você quer simular uma API com o json-server, o que não é o seu caso.


2. Onde criar a aplicação Angular

Você pode criar o projeto Angular em qualquer pasta separada da sua API. Por exemplo:

  • Sua API Java: c:\teste
  • Projeto Angular: c:\projetos\front-angular

Para criar o projeto, use:

ng new front-angular

3. Como integrar Angular com a API

No Angular, você vai usar o HttpClient para fazer requisições para a API. Exemplo de serviço:

ng generate service services/produto

No arquivo produto.service.ts:

import { HttpClient } from '@angular/common/http';
import { Injectable } from '@angular/core';
import { Observable } from 'rxjs';

@Injectable({
  providedIn: 'root'
})
export class ProdutoService {
  private apiUrl = 'http://localhost:8080/produtos';

  constructor(private http: HttpClient) {}

  listar(): Observable<any> {
    return this.http.get(this.apiUrl);
  }

  adicionar(produto: any): Observable<any> {
    return this.http.post(this.apiUrl, produto);
  }
}

4. Liberar o CORS na API Java

Se o Angular estiver em localhost:4200, você precisa liberar o acesso na sua API Java. Exemplo com Spring Boot:

@CrossOrigin(origins = "http://localhost:4200")
@RestController
@RequestMapping("/produtos")
public class ProdutoController {
    // seus endpoints aqui
}

Abs;