From 0fcbf79d1c5555403522f76911cdbd15571ff890 Mon Sep 17 00:00:00 2001
From: zj <1772600164@qq.com>
Date: Sun, 02 Jun 2024 16:55:05 +0800
Subject: [PATCH] 1
---
src/main/java/com/nq/service/impl/SiteNewsServiceImpl.java | 43 +++++++++++++++++++++++++++++--------------
1 files changed, 29 insertions(+), 14 deletions(-)
diff --git a/src/main/java/com/nq/service/impl/SiteNewsServiceImpl.java b/src/main/java/com/nq/service/impl/SiteNewsServiceImpl.java
index 36279ac..9e7bff1 100644
--- a/src/main/java/com/nq/service/impl/SiteNewsServiceImpl.java
+++ b/src/main/java/com/nq/service/impl/SiteNewsServiceImpl.java
@@ -24,9 +24,12 @@
import java.util.Base64;
import java.util.Date;
import java.util.List;
+import java.util.concurrent.ExecutorService;
+import java.util.concurrent.Executors;
/**
* 新闻资讯
+ *
* @author lr
* @date 2020/07/24
*/
@@ -53,7 +56,7 @@
@Override
public int update(SiteNews model) {
int ret = siteNewsMapper.update(model);
- return ret>0 ? ret: 0;
+ return ret > 0 ? ret : 0;
}
/**
@@ -62,12 +65,12 @@
@Override
public ServerResponse save(SiteNews model) {
int ret = 0;
- if(model!=null && model.getId()>0){
+ if (model != null && model.getId() > 0) {
ret = siteNewsMapper.update(model);
- } else{
+ } else {
ret = siteNewsMapper.insert(model);
}
- if(ret>0){
+ if (ret > 0) {
return ServerResponse.createBySuccessMsg("操作成功");
}
return ServerResponse.createByErrorMsg("操作失败");
@@ -98,7 +101,7 @@
@Override
public ServerResponse getDetail(int id, HttpServletRequest request) {
SiteNews model = siteNewsMapper.load(id);
- if(model!=null){
+ if (model != null) {
GoogleTranslateUtil googleTranslateUtil = new GoogleTranslateUtil();
//取出每一条数据的内容,进行翻译
@@ -122,7 +125,7 @@
/*新闻资讯-top最新新闻资讯*/
@Override
- public ServerResponse getTopNewsList(int pageSize){
+ public ServerResponse getTopNewsList(int pageSize) {
List<SiteNews> listData = this.siteNewsMapper.getTopNewsList(pageSize);
PageInfo pageInfo = new PageInfo();
@@ -132,15 +135,26 @@
@Override
public void grabNews() {
- addNews(1, EStockType.IN.getStockUrl() + "stock-markets?key=" + EStockType.IN.getStockKey() + "&type=4");
+ ExecutorService executor = Executors.newFixedThreadPool(2);
+ try {
+ executor.submit(() -> addNews(1, EStockType.MAS.getStockUrl() + "stock-markets?key=" + EStockType.MAS.getStockKey() + "&type=4"));
+ executor.submit(() -> addNews(3, EStockType.MAS.getStockUrl() + "stock-markets?key=" + EStockType.MAS.getStockKey() + "&type=2"));
+ } catch (Exception e) {
+ e.printStackTrace();
+ log.error("添加新闻出现异常: " + e.getMessage());
+ } finally {
+ if (executor != null) {
+ executor.shutdown();
+ }
+ }
}
-
private void addNews(Integer type, String url) {
try {
String newlist = HttpRequest.doGrabGet(url);
JSONArray jsonArray = JSONArray.fromObject(newlist);
- if (jsonArray.size() > 0) {
- for (int i = 0; i < jsonArray.size(); i++) {
+ int size = jsonArray.size(); // 将jsonArray.size()的计算结果存储在变量中
+ if (size > 0) {
+ for (int i = 0; i < size; i++) {
JSONObject jsonObject = jsonArray.getJSONObject(i);
String newsId = jsonObject.getString("id");
if (siteNewsMapper.getNewsBySourceIdCount(newsId) == 0) {
@@ -150,7 +164,10 @@
siteNews.setTitle(jsonObject.getString("title"));
Long showTime = jsonObject.getLong("time");
siteNews.setShowTime(new Date(showTime * 1000));
- siteNews.setImgurl(jsonObject.getString("img"));
+ if(jsonObject.has("img")){
+ convertBase64ToImage(jsonObject.getString("img"),PropertiesUtil.getProperty("ftp.address")+newsId+".jpg");
+ siteNews.setImgurl(PropertiesUtil.getProperty("ftp.server.http.prefix")+newsId+".jpg");
+ }
siteNews.setDescription(jsonObject.getString("content"));
siteNews.setContent(jsonObject.getString("content"));
siteNews.setStatus(1);
@@ -161,10 +178,9 @@
}
} catch (Exception e) {
e.printStackTrace();
- log.error("添加新闻出现异常: " + e.getMessage());
+ log.error("添加新闻出现异常: " + e.getMessage());
}
}
-
public static String convertBase64ToImage(String base64Str, String path) {
byte[] imageBytes = Base64.getDecoder().decode(base64Str);
@@ -179,5 +195,4 @@
}
return path;
}
-
}
--
Gitblit v1.9.3