17. Creating a business service


Teraz wykorzystamy klasę biznesową:

@Service
public class TopicService { //business service - singleton/instance

	private List<Topic> topics = Arrays.asList(
			new Topic("spring", "spring framework", "spring framework description"),
			new Topic("java", "java framework", "java framework description"),
			new Topic("javascript", "javascript framework", "javascript framework description")
			);
	
	public List<Topic> getAllTopics(){
		return topics;
	}
}

Dodajemy adnotację “@Service”. Następnie jak poprzednio, tylko, tym razem zapisując w zmiennej, umieszczamy listę obiektów typu “Topic”. A pod koniec klasy tworzymy jeszcze metodę zwracającą naszą prywatną zmienną.

 

Później dokonujemy zmian w kontrolerze:

@RestController
public class TopicController {

	@Autowired
	private TopicService topicService;
	
	@RequestMapping("/topics")
	public List<Topic> getAllTopics() { 
	return topicService.getAllTopics();
	}
}

Zaciągamy poprzez adnotację “@Autowired” instancję “TopicService”, żeby w metodzie odwołać się do metody biznesowej z singletonu tej klasy.