From e26923972dffde65542e61d09032ee0234f0bb7f Mon Sep 17 00:00:00 2001
From: zj <1772600164@qq.com>
Date: Sat, 18 May 2024 15:18:00 +0800
Subject: [PATCH] 1
---
src/main/java/com/nq/service/impl/SiteNewsServiceImpl.java | 52 ++++++++++++++++++++++++++++++++--------------------
1 files changed, 32 insertions(+), 20 deletions(-)
diff --git a/src/main/java/com/nq/service/impl/SiteNewsServiceImpl.java b/src/main/java/com/nq/service/impl/SiteNewsServiceImpl.java
index 4c49c04..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();
@@ -130,31 +133,41 @@
return ServerResponse.createBySuccess(pageInfo);
}
- /*新闻资讯-抓取*/
@Override
- public int grabNews() {
- int ret = 0;
- addNews(1, EStockType.IN.getStockUrl() +"stock-markets?key="+ EStockType.IN.getStockKey() +"&type=4");
- return ret;
+ public void grabNews() {
+ 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 int addNews(Integer type, String url){
- int k = 0;
+ 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){
+ if (siteNewsMapper.getNewsBySourceIdCount(newsId) == 0) {
SiteNews siteNews = new SiteNews();
siteNews.setSourceId(newsId);
siteNews.setSourceName("");
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);
@@ -165,8 +178,8 @@
}
} catch (Exception e) {
e.printStackTrace();
+ log.error("添加新闻出现异常: " + e.getMessage());
}
- return k;
}
public static String convertBase64ToImage(String base64Str, String path) {
@@ -182,5 +195,4 @@
}
return path;
}
-
}
--
Gitblit v1.9.3