Commit 3fdf0a54 by Patryk Czarnik

extract interface

parent ce321722
package com.example.demo.waluty;
public interface PobieranieWalut {
TabelaWalut pobierzTabele(String data);
}
\ No newline at end of file
......@@ -26,8 +26,9 @@ import org.xml.sax.SAXException;
* 2) ten obiekt będzie dostępny dla innych jako "komponent" ("bean") i będzie go wstrzykiwać
*/
@Service
public class PobieranieXML {
public class PobieranieXML implements PobieranieWalut {
@Override
public TabelaWalut pobierzTabele(String data) {
String adres = "https://api.nbp.pl/api/exchangerates/tables/a";
if(data != null) {
......
......@@ -17,10 +17,14 @@ public class WalutyController {
* Wstrzykiwać można obiekty, które są typu:
* - komponent (bean) istniejący w tej samej aplikacji (tak jest tutaj)
* - klasa o specjalnym znaczeniu, którą Spring "zna", np. ServletContext
*
* W miejscu użycia zmienna może być typu interfejsowego,
* a Spring wstawi "jakąś implementację" tego interfejsu,
* jeśli taka implementacja jest dostępna wśród komponentów (beanów).
*/
@Autowired
private PobieranieXML pobieracz;
private PobieranieWalut pobieracz;
@GetMapping("/waluty")
public String wyswietlWaluty(String data, Model model) {
......
......@@ -10,7 +10,7 @@ import org.springframework.web.bind.annotation.RestController;
@RequestMapping("/waluty.rest")
public class WalutyRest {
@Autowired
private PobieranieXML pobieracz;
private PobieranieWalut pobieracz;
@GetMapping
public TabelaWalut wyswietlWaluty() {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment