Hadoop基础--统计商家id的标签数案例分析

                               作者:尹正杰

版权声明:原创作品,谢绝转载!否则将追究法律责任。

 

 

 

 

一.项目需求

   将“temptags.txt”中的数据进行分析,统计出商家id的评论标签数量,由于博客园无法上传大文件的文本,因此我把该文本的内容放在博客园的另一个链接了(需要的戳我),如果网页打不开的话也就可以去百度云盘里下载副本,链接:https://pan.baidu.com/s/1daRiwOVe6ohn42fTv6ysJg 密码:h6er。

  实现效果如下:

Hadoop基础--统计商家id的标签数案例分析

 

二.代码实现

 1 /*
 2 @author :yinzhengjie
 3 Blog:http://www.cnblogs.com/yinzhengjie/tag/Hadoop%E8%BF%9B%E9%98%B6%E4%B9%8B%E8%B7%AF/
 4 EMAIL:y1053419035@qq.com
 5 */
 6 package cn.org.yinzhengjie.taggen;
 7 
 8 import com.alibaba.fastjson.JSON;
 9 import com.alibaba.fastjson.JSONArray;
10 import com.alibaba.fastjson.JSONObject;
11 
12 import java.util.ArrayList;
13 import java.util.List;
14 
15 public class Util {
16     public static List<String> taggen(String comment){
17         //解析传进来的字符串
18         JSONObject jo = JSON.parseObject(comment);
19         //拿到包含商家评论的相关的标签
20         JSONArray jArray = jo.getJSONArray("extInfoList");
21         //过滤掉不含商家评论的标签
22         if(jArray != null && jArray.size() != 0){
23             //定义一个空的有序集合
24             List<String> list = new ArrayList<String>();
25             //通过jArray得到第一个json串,作为json对象
26             JSONObject jo2 = jArray.getJSONObject(0);
27             //进一步拿到商家评论的相关的标签
28             JSONArray jArray2 = jo2.getJSONArray("values");
29             //进一步过滤掉不含商家评论的标签
30             if(jArray2 != null && jArray2.size() != 0){
31                 for (Object obj : jArray2) {
32                     //将商检评论的标签添加到我们定义的集合中
33                     list.add(obj.toString());
34                 }
35                 return list;
36             }
37         }
38         return null;
39     }
40 }
Util.java 文件内容

相关文章: