Skip to content

Commit a8f3a85

Browse files
committed
optimize code
1 parent a4c8cdf commit a8f3a85

File tree

5 files changed

+27
-44
lines changed

5 files changed

+27
-44
lines changed

.gitignore

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@ node_modules
55
.vscode
66
.mvn
77
.DS_Store
8+
src/test/java/app/util
89
src/.DS_Store
910
src/main/.DS_Store
1011
src/main/resources/.DS_Store
@@ -17,5 +18,3 @@ yarn.lock
1718
package-lock.json
1819
movie-helper.iml
1920
movie-helper-front
20-
21-
src/test/java/app/util

src/main/java/app/constant/MovieTypeEnum.java

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,10 +2,15 @@
22

33
/**
44
* @author zhihao zhang
5-
* Date: 2018-10-27
5+
* @since 2018-10-27
66
*/
77

88
public enum MovieTypeEnum {
9+
/**
10+
* NORMAL: normal movies
11+
* RECENT: recent movies
12+
* TOP: top movies
13+
*/
914
NORMAL,
1015
RECENT,
1116
TOP

src/main/java/app/service/MovieService.java

Lines changed: 0 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -5,14 +5,10 @@
55
import app.entity.Film;
66
import app.service.db.DataService;
77
import app.util.JsoupUtils;
8-
import app.vo.movie.Movie;
98
import app.vo.movie.MovieSubject;
10-
import app.vo.movie.MovieVo;
11-
import com.fasterxml.jackson.annotation.JsonInclude;
129
import com.fasterxml.jackson.databind.ObjectMapper;
1310
import com.fasterxml.jackson.databind.type.TypeFactory;
1411
import com.google.common.base.Strings;
15-
import com.google.common.collect.ImmutableMap;
1612
import com.google.common.collect.Lists;
1713
import lombok.AllArgsConstructor;
1814
import lombok.extern.slf4j.Slf4j;
@@ -26,7 +22,6 @@
2622

2723
import java.io.IOException;
2824
import java.util.List;
29-
import java.util.Map;
3025
import java.util.Objects;
3126
import java.util.concurrent.CompletableFuture;
3227
import java.util.concurrent.ExecutorService;
@@ -47,11 +42,6 @@ public class MovieService {
4742
private static final String DOUBAN_URL = "https://douban.uieee.com";
4843
private static final ObjectMapper MAPPER = new ObjectMapper();
4944

50-
private static final Map<MovieTypeEnum, String> URL_MAP = ImmutableMap.of(
51-
MovieTypeEnum.RECENT, DOUBAN_URL.concat("/v2/movie/in_theaters?city=上海"),
52-
MovieTypeEnum.TOP, DOUBAN_URL.concat("/v2/movie/top250?start=0&count=100")
53-
);
54-
5545
private static final OkHttpClient HTTP_CLIENT = new OkHttpClient();
5646
private static final ExecutorService executorService =
5747
new ThreadPoolExecutor(2, 2, 60, TimeUnit.SECONDS,
@@ -148,18 +138,6 @@ private void saveMovie(MovieTypeEnum movieTypeEnum) {
148138
this.saveFilmList(filmList, movieTypeEnum);
149139
}
150140

151-
private List<Movie> getMoviesFromOrigin(String url) {
152-
MAPPER.setSerializationInclusion(JsonInclude.Include.NON_NULL);
153-
try {
154-
MovieVo movieVo = MAPPER.readValue(getUrlContent(url),
155-
TypeFactory.defaultInstance().constructType(MovieVo.class));
156-
return movieVo.getSubjects();
157-
} catch (Exception e) {
158-
log.error("failed to get movie info by {}", url, e);
159-
return Lists.newArrayList();
160-
}
161-
}
162-
163141
private String getUrlContent(String url) throws IOException {
164142
Request request = new Request.Builder()
165143
.url(url)
Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,14 @@
11
package app.util;
22

3+
import lombok.experimental.UtilityClass;
4+
35
/**
46
* @author zhihao zhang
57
* @since 3/8/20
68
*/
79

8-
public final class ConstantUtils {
9-
public static final String LARGE = "large";
10-
public static final String SEPARATOR = ",";
11-
12-
private ConstantUtils() { }
10+
@UtilityClass
11+
public class ConstantUtils {
12+
public final String LARGE = "large";
13+
public final String SEPARATOR = ",";
1314
}

src/main/java/app/util/JsoupUtils.java

Lines changed: 14 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@
33
import app.constant.MovieTypeEnum;
44
import app.entity.Film;
55
import com.google.common.collect.Lists;
6+
import lombok.experimental.UtilityClass;
67
import lombok.extern.slf4j.Slf4j;
78
import org.apache.commons.lang3.StringUtils;
89
import org.jsoup.Jsoup;
@@ -25,16 +26,15 @@
2526
*/
2627

2728
@Slf4j
29+
@UtilityClass
2830
public final class JsoupUtils {
29-
private static final String NOWPLAYING = "nowplaying";
30-
private static final String RECENT_URL = "https://movie.douban.com/cinema/nowplaying/shanghai/";
31-
private static final String DOUBAN_URL = "https://movie.douban.com/subject/";
32-
private static final String TOP_DOUBAN_URL = "https://movie.douban.com/top250?start=";
33-
private static final String PROPERTY = "property";
31+
private final String NOWPLAYING = "nowplaying";
32+
private final String RECENT_URL = "https://movie.douban.com/cinema/nowplaying/shanghai/";
33+
private final String DOUBAN_URL = "https://movie.douban.com/subject/";
34+
private final String TOP_DOUBAN_URL = "https://movie.douban.com/top250?start=";
35+
private final String PROPERTY = "property";
3436

35-
private JsoupUtils() {}
36-
37-
public static List<Film> getFilmListFromDouban() {
37+
public List<Film> getFilmListFromDouban() {
3838
List<Film> filmList = Lists.newArrayList();
3939
LocalDateTime updateTime = LocalDateTime.now();
4040

@@ -61,7 +61,7 @@ public static List<Film> getFilmListFromDouban() {
6161
return filmList;
6262
}
6363

64-
public static List<Film> getTopFilmListFromDouban() {
64+
public List<Film> getTopFilmListFromDouban() {
6565
int gap = 25;
6666
int n = 10;
6767
LocalDateTime updateTime = LocalDateTime.now();
@@ -94,7 +94,7 @@ public static List<Film> getTopFilmListFromDouban() {
9494
return filmList;
9595
}
9696

97-
public static Film getFilmDetailByMovieTypeAndUrl(MovieTypeEnum movieTypeEnum, String url) {
97+
public Film getFilmDetailByMovieTypeAndUrl(MovieTypeEnum movieTypeEnum, String url) {
9898
if (MovieTypeEnum.RECENT.equals(movieTypeEnum)) {
9999
return getFilmDetailFromUrl(url);
100100
} else if (MovieTypeEnum.TOP.equals(movieTypeEnum)) {
@@ -103,7 +103,7 @@ public static Film getFilmDetailByMovieTypeAndUrl(MovieTypeEnum movieTypeEnum, S
103103
return null;
104104
}
105105

106-
private static Film getFilmDetailFromUrl(String url) {
106+
private Film getFilmDetailFromUrl(String url) {
107107
if (StringUtils.isBlank(url)) {
108108
return null;
109109
}
@@ -130,7 +130,7 @@ private static Film getFilmDetailFromUrl(String url) {
130130
}
131131
}
132132

133-
private static Film getTopFilmDetailFromUrl(String url) {
133+
private Film getTopFilmDetailFromUrl(String url) {
134134
if (StringUtils.isBlank(url)) {
135135
return null;
136136
}
@@ -193,7 +193,7 @@ private static Film getTopFilmDetailFromUrl(String url) {
193193
}
194194
}
195195

196-
private static String getImageUrl(Element item) {
196+
private String getImageUrl(Element item) {
197197
Elements img = item.getElementsByTag("img");
198198
String url = "";
199199
try {
@@ -204,7 +204,7 @@ private static String getImageUrl(Element item) {
204204
return url;
205205
}
206206

207-
private static String getJoinString(String text, String split) {
207+
private String getJoinString(String text, String split) {
208208
if (StringUtils.isBlank(text)) {
209209
return "";
210210
}

0 commit comments

Comments
 (0)