Я создал небольшой проект Spring Boot Project, который берет данные из локального источника данных neo4j (ogm) и, надеюсь, вернет данные о погоде из DarkSky / OpenWeather вместе с позже собранными данными с моей домашней метеостанции,
Таким образом, настройка состоит из трех узловых объектов
WeatherData DarkSky OpenWeather
Мой запрос Cypher внутри WeatherDataRepository выглядит так:
@Query("Match (z:Zone),(w:WeatherData),(c:Customer),(d:DarkSky),(o:OpenWeather) where
c.ID_Token = $token" + " and (c)-[:Has_Subscribed_To]->(z) and (z)<-[:Weather_Data_For]-(w) return w as WeatherData, d "+ "as DarkSky, o as OpenWeather")
Список погоды (строковый токен) ;
В веб-интерфейсе запрос возвращает 3 узла и отношения в соответствии с соответствием каждой части.
So ive попробовал несколько вещей внутри контроллера после чтения из docs.spring.io в этой области, но не достигли того, что я ищу, поэтому явно делаю это неправильно.
мой текущий контроллер WeatherData выглядит так:
@NodeEntity(label = "WeatherData")
public class WeatherData {
private String Description;
private List<DarkSky> DarkSky;
private List<OpenWeather> OpenWeather;
public List<DarkSky> getDarkSky() {
return DarkSky;
}
public void setDarkSky(List<DarkSky> darkSky) {
DarkSky = darkSky;
}
public List<OpenWeather> getOpenWeather() {
return OpenWeather;
}
public void setOpenWeather(List<OpenWeather> openWeather) {
OpenWeather = openWeather;
}
public String getDescription() {
return Description;
}
public void setDescription(String description) {
Description = description;
}
Я автоматически подключил репозиторий , поэтому я получаю описание от узла WeatherData, но не от узлов DarkSky или OpenWeather. От почтальона я получаю следующее
[
{
"description": "Weather Data From DarkSky And OpenWeather",
"darkSky": null,
"openWeather": null
}
]
, как видите, любая помощь здесь была бы более чем оценена, поскольку я все еще много изучаю структуру и методы получения требуемых данных.