Skip to content

Commit b82803e

Browse files
committed
Remove unnecessary @JsonProperty
Jackson support Java records long time ago. Signed-off-by: Yanming Zhou <[email protected]>
1 parent cf10059 commit b82803e

File tree

6 files changed

+94
-99
lines changed
  • misc/spring-ai-java-function-callback/src/main/java/com/example/java_ai_function_callback
  • model-context-protocol/weather

6 files changed

+94
-99
lines changed

misc/spring-ai-java-function-callback/src/main/java/com/example/java_ai_function_callback/WeatherRequest.java

+4-4
Original file line numberDiff line numberDiff line change
@@ -12,19 +12,19 @@ public class WeatherRequest {
1212
public WeatherRequest() {
1313
}
1414

15-
@JsonProperty(required = true, value = "location")
15+
@JsonProperty(required = true)
1616
@JsonPropertyDescription("The city and state e.g. San Francisco, CA")
1717
private String location = "";
1818

19-
@JsonProperty(required = true, value = "lat")
19+
@JsonProperty(required = true)
2020
@JsonPropertyDescription("The city latitude")
2121
private double lat = 0.0;
2222

23-
@JsonProperty(required = true, value = "lon")
23+
@JsonProperty(required = true)
2424
@JsonPropertyDescription("The city longitude")
2525
private double lon = 0.0;
2626

27-
@JsonProperty(required = true, value = "unit")
27+
@JsonProperty(required = true)
2828
@JsonPropertyDescription("Temperature unit")
2929
private SpringAiJavaFunctionCallbackApplication.Unit unit = SpringAiJavaFunctionCallbackApplication.Unit.C;
3030

model-context-protocol/weather/manual-webflux-server/src/main/java/org/springframework/ai/mcp/sample/server/WeatherApiClient.java

+18-19
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,6 @@
2020
import java.util.stream.Collectors;
2121

2222
import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
23-
import com.fasterxml.jackson.annotation.JsonProperty;
2423

2524
import org.springframework.ai.tool.annotation.Tool;
2625
import org.springframework.web.client.RestClient;
@@ -48,36 +47,36 @@ public WeatherApiClient() {
4847
}
4948

5049
@JsonIgnoreProperties(ignoreUnknown = true)
51-
public record Points(@JsonProperty("properties") Props properties) {
50+
public record Points(Props properties) {
5251
@JsonIgnoreProperties(ignoreUnknown = true)
53-
public record Props(@JsonProperty("forecast") String forecast) {
52+
public record Props(String forecast) {
5453
}
5554
}
5655

5756
@JsonIgnoreProperties(ignoreUnknown = true)
58-
public record Forecast(@JsonProperty("properties") Props properties) {
57+
public record Forecast(Props properties) {
5958
@JsonIgnoreProperties(ignoreUnknown = true)
60-
public record Props(@JsonProperty("periods") List<Period> periods) {
59+
public record Props(List<Period> periods) {
6160
}
6261

6362
@JsonIgnoreProperties(ignoreUnknown = true)
64-
public record Period(@JsonProperty("number") Integer number, @JsonProperty("name") String name,
65-
@JsonProperty("startTime") String startTime, @JsonProperty("endTime") String endTime,
66-
@JsonProperty("isDaytime") Boolean isDayTime, @JsonProperty("temperature") Integer temperature,
67-
@JsonProperty("temperatureUnit") String temperatureUnit,
68-
@JsonProperty("temperatureTrend") String temperatureTrend,
69-
@JsonProperty("probabilityOfPrecipitation") Map probabilityOfPrecipitation,
70-
@JsonProperty("windSpeed") String windSpeed, @JsonProperty("windDirection") String windDirection,
71-
@JsonProperty("icon") String icon, @JsonProperty("shortForecast") String shortForecast,
72-
@JsonProperty("detailedForecast") String detailedForecast) {
63+
public record Period(Integer number, String name,
64+
String startTime, String endTime,
65+
Boolean isDayTime, Integer temperature,
66+
String temperatureUnit,
67+
String temperatureTrend,
68+
Map probabilityOfPrecipitation,
69+
String windSpeed, String windDirection,
70+
String icon, String shortForecast,
71+
String detailedForecast) {
7372
}
7473
}
7574

7675
@JsonIgnoreProperties(ignoreUnknown = true)
77-
public record Alert(@JsonProperty("features") List<Feature> features) {
76+
public record Alert(List<Feature> features) {
7877

7978
@JsonIgnoreProperties(ignoreUnknown = true)
80-
public record Feature(@JsonProperty("properties") Properties properties) {
79+
public record Feature(Properties properties) {
8180

8281
public String toText() {
8382
return String.format("""
@@ -92,9 +91,9 @@ public String toText() {
9291
}
9392

9493
@JsonIgnoreProperties(ignoreUnknown = true)
95-
public record Properties(@JsonProperty("event") String event, @JsonProperty("areaDesc") String areaDesc,
96-
@JsonProperty("severity") String severity, @JsonProperty("description") String description,
97-
@JsonProperty("instruction") String instruction) {
94+
public record Properties(String event, String areaDesc,
95+
String severity, String description,
96+
String instruction) {
9897
}
9998
}
10099

model-context-protocol/weather/starter-stdio-server/src/main/java/org/springframework/ai/mcp/sample/server/WeatherService.java

+18-19
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,6 @@
2020
import java.util.stream.Collectors;
2121

2222
import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
23-
import com.fasterxml.jackson.annotation.JsonProperty;
2423

2524
import org.springframework.ai.tool.annotation.Tool;
2625
import org.springframework.ai.tool.annotation.ToolParam;
@@ -45,42 +44,42 @@ public WeatherService() {
4544
}
4645

4746
@JsonIgnoreProperties(ignoreUnknown = true)
48-
public record Points(@JsonProperty("properties") Props properties) {
47+
public record Points(Props properties) {
4948
@JsonIgnoreProperties(ignoreUnknown = true)
50-
public record Props(@JsonProperty("forecast") String forecast) {
49+
public record Props(String forecast) {
5150
}
5251
}
5352

5453
@JsonIgnoreProperties(ignoreUnknown = true)
55-
public record Forecast(@JsonProperty("properties") Props properties) {
54+
public record Forecast(Props properties) {
5655
@JsonIgnoreProperties(ignoreUnknown = true)
57-
public record Props(@JsonProperty("periods") List<Period> periods) {
56+
public record Props(List<Period> periods) {
5857
}
5958

6059
@JsonIgnoreProperties(ignoreUnknown = true)
61-
public record Period(@JsonProperty("number") Integer number, @JsonProperty("name") String name,
62-
@JsonProperty("startTime") String startTime, @JsonProperty("endTime") String endTime,
63-
@JsonProperty("isDaytime") Boolean isDayTime, @JsonProperty("temperature") Integer temperature,
64-
@JsonProperty("temperatureUnit") String temperatureUnit,
65-
@JsonProperty("temperatureTrend") String temperatureTrend,
66-
@JsonProperty("probabilityOfPrecipitation") Map probabilityOfPrecipitation,
67-
@JsonProperty("windSpeed") String windSpeed, @JsonProperty("windDirection") String windDirection,
68-
@JsonProperty("icon") String icon, @JsonProperty("shortForecast") String shortForecast,
69-
@JsonProperty("detailedForecast") String detailedForecast) {
60+
public record Period(Integer number, String name,
61+
String startTime, String endTime,
62+
Boolean isDayTime, Integer temperature,
63+
String temperatureUnit,
64+
String temperatureTrend,
65+
Map probabilityOfPrecipitation,
66+
String windSpeed, String windDirection,
67+
String icon, String shortForecast,
68+
String detailedForecast) {
7069
}
7170
}
7271

7372
@JsonIgnoreProperties(ignoreUnknown = true)
74-
public record Alert(@JsonProperty("features") List<Feature> features) {
73+
public record Alert(List<Feature> features) {
7574

7675
@JsonIgnoreProperties(ignoreUnknown = true)
77-
public record Feature(@JsonProperty("properties") Properties properties) {
76+
public record Feature(Properties properties) {
7877
}
7978

8079
@JsonIgnoreProperties(ignoreUnknown = true)
81-
public record Properties(@JsonProperty("event") String event, @JsonProperty("areaDesc") String areaDesc,
82-
@JsonProperty("severity") String severity, @JsonProperty("description") String description,
83-
@JsonProperty("instruction") String instruction) {
80+
public record Properties(String event, String areaDesc,
81+
String severity, String description,
82+
String instruction) {
8483
}
8584
}
8685

model-context-protocol/weather/starter-webflux-server/src/main/java/org/springframework/ai/mcp/sample/server/WeatherService.java

+18-19
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,6 @@
2020
import java.util.stream.Collectors;
2121

2222
import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
23-
import com.fasterxml.jackson.annotation.JsonProperty;
2423

2524
import org.springframework.ai.tool.annotation.Tool;
2625
import org.springframework.stereotype.Service;
@@ -44,42 +43,42 @@ public WeatherService() {
4443
}
4544

4645
@JsonIgnoreProperties(ignoreUnknown = true)
47-
public record Points(@JsonProperty("properties") Props properties) {
46+
public record Points(Props properties) {
4847
@JsonIgnoreProperties(ignoreUnknown = true)
49-
public record Props(@JsonProperty("forecast") String forecast) {
48+
public record Props(String forecast) {
5049
}
5150
}
5251

5352
@JsonIgnoreProperties(ignoreUnknown = true)
54-
public record Forecast(@JsonProperty("properties") Props properties) {
53+
public record Forecast(Props properties) {
5554
@JsonIgnoreProperties(ignoreUnknown = true)
56-
public record Props(@JsonProperty("periods") List<Period> periods) {
55+
public record Props(List<Period> periods) {
5756
}
5857

5958
@JsonIgnoreProperties(ignoreUnknown = true)
60-
public record Period(@JsonProperty("number") Integer number, @JsonProperty("name") String name,
61-
@JsonProperty("startTime") String startTime, @JsonProperty("endTime") String endTime,
62-
@JsonProperty("isDaytime") Boolean isDayTime, @JsonProperty("temperature") Integer temperature,
63-
@JsonProperty("temperatureUnit") String temperatureUnit,
64-
@JsonProperty("temperatureTrend") String temperatureTrend,
65-
@JsonProperty("probabilityOfPrecipitation") Map probabilityOfPrecipitation,
66-
@JsonProperty("windSpeed") String windSpeed, @JsonProperty("windDirection") String windDirection,
67-
@JsonProperty("icon") String icon, @JsonProperty("shortForecast") String shortForecast,
68-
@JsonProperty("detailedForecast") String detailedForecast) {
59+
public record Period(Integer number, String name,
60+
String startTime, String endTime,
61+
Boolean isDayTime, Integer temperature,
62+
String temperatureUnit,
63+
String temperatureTrend,
64+
Map probabilityOfPrecipitation,
65+
String windSpeed, String windDirection,
66+
String icon, String shortForecast,
67+
String detailedForecast) {
6968
}
7069
}
7170

7271
@JsonIgnoreProperties(ignoreUnknown = true)
73-
public record Alert(@JsonProperty("features") List<Feature> features) {
72+
public record Alert(List<Feature> features) {
7473

7574
@JsonIgnoreProperties(ignoreUnknown = true)
76-
public record Feature(@JsonProperty("properties") Properties properties) {
75+
public record Feature(Properties properties) {
7776
}
7877

7978
@JsonIgnoreProperties(ignoreUnknown = true)
80-
public record Properties(@JsonProperty("event") String event, @JsonProperty("areaDesc") String areaDesc,
81-
@JsonProperty("severity") String severity, @JsonProperty("description") String description,
82-
@JsonProperty("instruction") String instruction) {
79+
public record Properties(String event, String areaDesc,
80+
String severity, String description,
81+
String instruction) {
8382
}
8483
}
8584

model-context-protocol/weather/starter-webmvc-oauth2-server/src/main/java/org/springframework/ai/mcp/sample/server/WeatherService.java

+18-19
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,6 @@
2020
import java.util.stream.Collectors;
2121

2222
import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
23-
import com.fasterxml.jackson.annotation.JsonProperty;
2423

2524
import org.springframework.ai.tool.annotation.Tool;
2625
import org.springframework.stereotype.Service;
@@ -44,42 +43,42 @@ public WeatherService() {
4443
}
4544

4645
@JsonIgnoreProperties(ignoreUnknown = true)
47-
public record Points(@JsonProperty("properties") Props properties) {
46+
public record Points(Props properties) {
4847
@JsonIgnoreProperties(ignoreUnknown = true)
49-
public record Props(@JsonProperty("forecast") String forecast) {
48+
public record Props(String forecast) {
5049
}
5150
}
5251

5352
@JsonIgnoreProperties(ignoreUnknown = true)
54-
public record Forecast(@JsonProperty("properties") Props properties) {
53+
public record Forecast(Props properties) {
5554
@JsonIgnoreProperties(ignoreUnknown = true)
56-
public record Props(@JsonProperty("periods") List<Period> periods) {
55+
public record Props(List<Period> periods) {
5756
}
5857

5958
@JsonIgnoreProperties(ignoreUnknown = true)
60-
public record Period(@JsonProperty("number") Integer number, @JsonProperty("name") String name,
61-
@JsonProperty("startTime") String startTime, @JsonProperty("endTime") String endTime,
62-
@JsonProperty("isDaytime") Boolean isDayTime, @JsonProperty("temperature") Integer temperature,
63-
@JsonProperty("temperatureUnit") String temperatureUnit,
64-
@JsonProperty("temperatureTrend") String temperatureTrend,
65-
@JsonProperty("probabilityOfPrecipitation") Map probabilityOfPrecipitation,
66-
@JsonProperty("windSpeed") String windSpeed, @JsonProperty("windDirection") String windDirection,
67-
@JsonProperty("icon") String icon, @JsonProperty("shortForecast") String shortForecast,
68-
@JsonProperty("detailedForecast") String detailedForecast) {
59+
public record Period(Integer number, String name,
60+
String startTime, String endTime,
61+
Boolean isDayTime, Integer temperature,
62+
String temperatureUnit,
63+
String temperatureTrend,
64+
Map probabilityOfPrecipitation,
65+
String windSpeed, String windDirection,
66+
String icon, String shortForecast,
67+
String detailedForecast) {
6968
}
7069
}
7170

7271
@JsonIgnoreProperties(ignoreUnknown = true)
73-
public record Alert(@JsonProperty("features") List<Feature> features) {
72+
public record Alert(List<Feature> features) {
7473

7574
@JsonIgnoreProperties(ignoreUnknown = true)
76-
public record Feature(@JsonProperty("properties") Properties properties) {
75+
public record Feature(Properties properties) {
7776
}
7877

7978
@JsonIgnoreProperties(ignoreUnknown = true)
80-
public record Properties(@JsonProperty("event") String event, @JsonProperty("areaDesc") String areaDesc,
81-
@JsonProperty("severity") String severity, @JsonProperty("description") String description,
82-
@JsonProperty("instruction") String instruction) {
79+
public record Properties(String event, String areaDesc,
80+
String severity, String description,
81+
String instruction) {
8382
}
8483
}
8584

model-context-protocol/weather/starter-webmvc-server/src/main/java/org/springframework/ai/mcp/sample/server/WeatherService.java

+18-19
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,6 @@
2020
import java.util.stream.Collectors;
2121

2222
import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
23-
import com.fasterxml.jackson.annotation.JsonProperty;
2423

2524
import org.springframework.ai.tool.annotation.Tool;
2625
import org.springframework.stereotype.Service;
@@ -44,42 +43,42 @@ public WeatherService() {
4443
}
4544

4645
@JsonIgnoreProperties(ignoreUnknown = true)
47-
public record Points(@JsonProperty("properties") Props properties) {
46+
public record Points(Props properties) {
4847
@JsonIgnoreProperties(ignoreUnknown = true)
49-
public record Props(@JsonProperty("forecast") String forecast) {
48+
public record Props(String forecast) {
5049
}
5150
}
5251

5352
@JsonIgnoreProperties(ignoreUnknown = true)
54-
public record Forecast(@JsonProperty("properties") Props properties) {
53+
public record Forecast(Props properties) {
5554
@JsonIgnoreProperties(ignoreUnknown = true)
56-
public record Props(@JsonProperty("periods") List<Period> periods) {
55+
public record Props(List<Period> periods) {
5756
}
5857

5958
@JsonIgnoreProperties(ignoreUnknown = true)
60-
public record Period(@JsonProperty("number") Integer number, @JsonProperty("name") String name,
61-
@JsonProperty("startTime") String startTime, @JsonProperty("endTime") String endTime,
62-
@JsonProperty("isDaytime") Boolean isDayTime, @JsonProperty("temperature") Integer temperature,
63-
@JsonProperty("temperatureUnit") String temperatureUnit,
64-
@JsonProperty("temperatureTrend") String temperatureTrend,
65-
@JsonProperty("probabilityOfPrecipitation") Map probabilityOfPrecipitation,
66-
@JsonProperty("windSpeed") String windSpeed, @JsonProperty("windDirection") String windDirection,
67-
@JsonProperty("icon") String icon, @JsonProperty("shortForecast") String shortForecast,
68-
@JsonProperty("detailedForecast") String detailedForecast) {
59+
public record Period(Integer number, String name,
60+
String startTime, String endTime,
61+
Boolean isDayTime, Integer temperature,
62+
String temperatureUnit,
63+
String temperatureTrend,
64+
Map probabilityOfPrecipitation,
65+
String windSpeed, String windDirection,
66+
String icon, String shortForecast,
67+
String detailedForecast) {
6968
}
7069
}
7170

7271
@JsonIgnoreProperties(ignoreUnknown = true)
73-
public record Alert(@JsonProperty("features") List<Feature> features) {
72+
public record Alert(List<Feature> features) {
7473

7574
@JsonIgnoreProperties(ignoreUnknown = true)
76-
public record Feature(@JsonProperty("properties") Properties properties) {
75+
public record Feature(Properties properties) {
7776
}
7877

7978
@JsonIgnoreProperties(ignoreUnknown = true)
80-
public record Properties(@JsonProperty("event") String event, @JsonProperty("areaDesc") String areaDesc,
81-
@JsonProperty("severity") String severity, @JsonProperty("description") String description,
82-
@JsonProperty("instruction") String instruction) {
79+
public record Properties(String event, String areaDesc,
80+
String severity, String description,
81+
String instruction) {
8382
}
8483
}
8584

0 commit comments

Comments
 (0)