用jackson替换fastjson
This commit is contained in:
13
pom.xml
13
pom.xml
@@ -32,7 +32,7 @@
|
||||
<java.version>25</java.version>
|
||||
<maven.compiler.source>25</maven.compiler.source>
|
||||
<maven.compiler.target>25</maven.compiler.target>
|
||||
<fastjson.version>2.0.60</fastjson.version>
|
||||
<!-- <fastjson.version>2.0.60</fastjson.version>-->
|
||||
<openfeign.version>5.0.0</openfeign.version>
|
||||
<hutool.version>5.8.25</hutool.version>
|
||||
<docker.private.repository>registry.cn-chengdu.aliyuncs.com/bamanker</docker.private.repository>
|
||||
@@ -60,11 +60,16 @@
|
||||
<artifactId>spring-cloud-starter-openfeign</artifactId>
|
||||
<version>${openfeign.version}</version>
|
||||
</dependency>
|
||||
<!-- 如果需要显式指定 Jackson 3 -->
|
||||
<dependency>
|
||||
<groupId>com.alibaba.fastjson2</groupId>
|
||||
<artifactId>fastjson2</artifactId>
|
||||
<version>${fastjson.version}</version>
|
||||
<groupId>tools.jackson.core</groupId>
|
||||
<artifactId>jackson-core</artifactId>
|
||||
</dependency>
|
||||
<!-- <dependency>-->
|
||||
<!-- <groupId>com.alibaba.fastjson2</groupId>-->
|
||||
<!-- <artifactId>fastjson2</artifactId>-->
|
||||
<!-- <version>${fastjson.version}</version>-->
|
||||
<!-- </dependency>-->
|
||||
<dependency>
|
||||
<groupId>org.springframework.boot</groupId>
|
||||
<artifactId>spring-boot-starter-web</artifactId>
|
||||
|
||||
@@ -2,18 +2,18 @@ package com.bamanker.dailylove.controller;
|
||||
|
||||
import cn.hutool.core.date.ChineseDate;
|
||||
import cn.hutool.core.date.DateUtil;
|
||||
import com.alibaba.fastjson2.JSONObject;
|
||||
import com.bamanker.dailylove.config.DailyLoveConfigure;
|
||||
import com.bamanker.dailylove.domain.*;
|
||||
import com.bamanker.dailylove.service.DataRemoteClient;
|
||||
import com.bamanker.dailylove.service.WechatRequestClient;
|
||||
import com.bamanker.dailylove.utils.DataUtils;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.web.bind.annotation.GetMapping;
|
||||
import org.springframework.web.bind.annotation.RestController;
|
||||
|
||||
import jakarta.annotation.Resource;
|
||||
import tools.jackson.databind.JsonNode;
|
||||
import tools.jackson.databind.ObjectMapper;
|
||||
|
||||
import java.text.SimpleDateFormat;
|
||||
import java.util.Date;
|
||||
|
||||
@@ -21,15 +21,20 @@ import java.util.Date;
|
||||
@RestController
|
||||
public class PushDailyController {
|
||||
|
||||
final
|
||||
ObjectMapper mapper;
|
||||
|
||||
|
||||
final
|
||||
DataRemoteClient dataRemoteClient;
|
||||
|
||||
final
|
||||
WechatRequestClient wechatRequestClient;
|
||||
|
||||
public PushDailyController(DataRemoteClient dataRemoteClient, WechatRequestClient wechatRequestClient) {
|
||||
public PushDailyController(DataRemoteClient dataRemoteClient, WechatRequestClient wechatRequestClient, ObjectMapper mapper) {
|
||||
this.dataRemoteClient = dataRemoteClient;
|
||||
this.wechatRequestClient = wechatRequestClient;
|
||||
this.mapper = mapper;
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -49,9 +54,11 @@ public class PushDailyController {
|
||||
param1.setCity(DailyLoveConfigure.City_ID);
|
||||
param1.setType("7");
|
||||
String weatherResp = dataRemoteClient.getWeather(param1);
|
||||
JSONObject weatherJson = JSONObject.parseObject(weatherResp).getJSONArray("result").getJSONObject(0).getJSONArray("list").getJSONObject(1);
|
||||
String city = JSONObject.parseObject(weatherResp).getJSONArray("result").getJSONObject(0).getString("area");
|
||||
Weather weather = weatherJson.toJavaObject(Weather.class);
|
||||
JsonNode weatherJson = mapper.readTree(weatherResp).get("result").get(0).get("list").get(1);
|
||||
String city = mapper.readTree(weatherResp).get("result").get(0).get("area").asString();
|
||||
// JSONObject weatherJson1 = JSONObject.parseObject(weatherResp).getJSONArray("result").getJSONObject(0).getJSONArray("list").getJSONObject(1);
|
||||
// String city1 = JSONObject.parseObject(weatherResp).getJSONArray("result").getJSONObject(0).getString("area");
|
||||
Weather weather = mapper.treeToValue(weatherJson, Weather.class);
|
||||
|
||||
resultVo.setAttribute("tomorrow", new DataItem(weather.getDate() + " " + weather.getWeek(), DailyLoveConfigure.Color_tomorrow));
|
||||
resultVo.setAttribute("city", new DataItem(city, DailyLoveConfigure.Color_city));
|
||||
@@ -65,15 +72,18 @@ public class PushDailyController {
|
||||
param2.setKey(DailyLoveConfigure.TianXin_Key);
|
||||
|
||||
String tipsResp = dataRemoteClient.getTips(param2);
|
||||
String tips = JSONObject.parseObject(tipsResp).getJSONArray("result").getJSONObject(0).getString("content");
|
||||
String tips = mapper.readTree(tipsResp).get("result").get(0).get("content").asString();
|
||||
// String tips1 = JSONObject.parseObject(tipsResp).getJSONArray("result").getJSONObject(0).getString("content");
|
||||
resultVo.setAttribute("tips", new DataItem(tips, DailyLoveConfigure.Color_tips));
|
||||
|
||||
String nightResp = dataRemoteClient.getNight(param2);
|
||||
String night = JSONObject.parseObject(nightResp).getJSONArray("result").getJSONObject(0).getString("content");
|
||||
String night = mapper.readTree(nightResp).get("result").get(0).get("content").asString();
|
||||
// String night1 = JSONObject.parseObject(nightResp).getJSONArray("result").getJSONObject(0).getString("content");
|
||||
resultVo.setAttribute("night", new DataItem(night, DailyLoveConfigure.Color_night));
|
||||
|
||||
String rainbowResp = dataRemoteClient.getRainbow(param2);
|
||||
String rainbow = JSONObject.parseObject(rainbowResp).getJSONArray("result").getJSONObject(0).getString("content");
|
||||
String rainbow = mapper.readTree(rainbowResp).get("result").get(0).get("content").asString();
|
||||
// String rainbow1 = JSONObject.parseObject(rainbowResp).getJSONArray("result").getJSONObject(0).getString("content");
|
||||
resultVo.setAttribute("rainbow", new DataItem(rainbow, DailyLoveConfigure.Color_dailyCn));
|
||||
|
||||
// String englishResp = dataRemoteClient.getDailyEnglish(param2);
|
||||
@@ -127,9 +137,9 @@ public class PushDailyController {
|
||||
|
||||
String accessTokenResp = wechatRequestClient.getAccessToken(wechatTokenParam);
|
||||
log.debug("accessTokenJson:{}", accessTokenResp);
|
||||
String token = JSONObject.parseObject(accessTokenResp).getString("access_token");
|
||||
String responseStr = wechatRequestClient.sendMsg(resultVo, token);
|
||||
return responseStr;
|
||||
String token = mapper.readTree(accessTokenResp).get("access_token").asString();
|
||||
// String token1 = JSONObject.parseObject(accessTokenResp).getString("access_token");
|
||||
return wechatRequestClient.sendMsg(resultVo, token);
|
||||
|
||||
}
|
||||
|
||||
@@ -144,9 +154,10 @@ public class PushDailyController {
|
||||
param1.setCity(DailyLoveConfigure.City_ID);
|
||||
param1.setType("1");
|
||||
String weatherResp = dataRemoteClient.getWeather(param1);
|
||||
JsonNode weatherJson = mapper.readTree(weatherResp).get("result").get(0);
|
||||
Weather weather = mapper.treeToValue(weatherJson, Weather.class);
|
||||
|
||||
Weather weather = JSONObject.parseObject(weatherResp).getJSONArray("result").getJSONObject(0).toJavaObject(Weather.class);
|
||||
|
||||
// Weather weather1 = JSONObject.parseObject(weatherResp).getJSONArray("result").getJSONObject(0).toJavaObject(Weather.class);
|
||||
|
||||
ResultVo resultVo = ResultVo.initializeResultVo(DailyLoveConfigure.Open_ID,
|
||||
DailyLoveConfigure.Template_ID_Morning,
|
||||
@@ -168,11 +179,13 @@ public class PushDailyController {
|
||||
// resultVo.setAttribute("tips", new DataItem(tips, DailyLoveConfigure.Color_tips));
|
||||
|
||||
String morningResp = dataRemoteClient.getMorning(param2);
|
||||
String morning = JSONObject.parseObject(morningResp).getJSONArray("result").getJSONObject(0).getString("content");
|
||||
String morning = mapper.readTree(morningResp).get("result").get(0).get("content").asString();
|
||||
// String morning1 = JSONObject.parseObject(morningResp).getJSONArray("result").getJSONObject(0).getString("content");
|
||||
resultVo.setAttribute("morning", new DataItem(morning, DailyLoveConfigure.Color_morning));
|
||||
|
||||
String rainbowResp = dataRemoteClient.getRainbow(param2);
|
||||
String rainbow = JSONObject.parseObject(rainbowResp).getJSONArray("result").getJSONObject(0).getString("content");
|
||||
String rainbow = mapper.readTree(rainbowResp).get("result").get(0).get("content").asString();
|
||||
// String rainbow1 = JSONObject.parseObject(rainbowResp).getJSONArray("result").getJSONObject(0).getString("content");
|
||||
resultVo.setAttribute("rainbow", new DataItem(rainbow, DailyLoveConfigure.Color_dailyCn));
|
||||
|
||||
// String englishResp = dataRemoteClient.getDailyEnglish(param2);
|
||||
@@ -228,9 +241,9 @@ public class PushDailyController {
|
||||
|
||||
String accessTokenResp = wechatRequestClient.getAccessToken(wechatTokenParam);
|
||||
log.debug("accessTokenJson:{}", accessTokenResp);
|
||||
String token = JSONObject.parseObject(accessTokenResp).getString("access_token");
|
||||
String responseStr = wechatRequestClient.sendMsg(resultVo, token);
|
||||
return responseStr;
|
||||
String token = mapper.readTree(accessTokenResp).get("access_token").asString();
|
||||
// String token1 = JSONObject.parseObject(accessTokenResp).getString("access_token");
|
||||
return wechatRequestClient.sendMsg(resultVo, token);
|
||||
|
||||
}
|
||||
|
||||
@@ -240,9 +253,12 @@ public class PushDailyController {
|
||||
* @param responseStr
|
||||
*/
|
||||
private void printPushLog(String responseStr) {
|
||||
JSONObject jsonObject = JSONObject.parseObject(responseStr);
|
||||
String msgCode = jsonObject.getString("errcode");
|
||||
String msgContent = jsonObject.getString("errmsg");
|
||||
JsonNode jsonNode = mapper.readTree(responseStr);
|
||||
String msgCode = jsonNode.get("errcode").asString();
|
||||
String msgContent = jsonNode.get("errmsg").asString();
|
||||
// JSONObject jsonObject = JSONObject.parseObject(responseStr);
|
||||
// String msgCode1 = jsonObject.getString("errcode");
|
||||
// String msgContent1 = jsonObject.getString("errmsg");
|
||||
SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
|
||||
System.out.println("[ " + dateFormat.format(new Date()) + " ] : messageCode=" + msgCode + ",messageContent=" + msgContent);
|
||||
}
|
||||
|
||||
@@ -1,26 +1,8 @@
|
||||
package com.bamanker.dailylove;
|
||||
|
||||
import cn.hutool.core.date.ChineseDate;
|
||||
import cn.hutool.core.date.DateUnit;
|
||||
import cn.hutool.core.date.DateUtil;
|
||||
import com.alibaba.fastjson2.JSONObject;
|
||||
import com.bamanker.dailylove.config.DailyLoveConfigure;
|
||||
import com.bamanker.dailylove.domain.TianXinReqParam;
|
||||
import com.bamanker.dailylove.domain.Weather;
|
||||
import com.bamanker.dailylove.service.DataRemoteClient;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.bouncycastle.util.Strings;
|
||||
import org.junit.jupiter.api.Test;
|
||||
import org.springframework.boot.test.context.SpringBootTest;
|
||||
|
||||
import jakarta.annotation.Resource;
|
||||
import java.text.ParseException;
|
||||
import java.text.SimpleDateFormat;
|
||||
import java.util.Calendar;
|
||||
import java.util.Date;
|
||||
|
||||
import static com.bamanker.dailylove.utils.DataUtils.getBirthdays;
|
||||
|
||||
@SpringBootTest
|
||||
@Slf4j
|
||||
class DailyLoveApplicationTests {
|
||||
|
||||
Reference in New Issue
Block a user