package date_20250509;

import org.apache.hadoop.io.IntWritable;
import org.apache.hadoop.io.LongWritable;
import org.apache.hadoop.io.Text;
import org.apache.hadoop.mapreduce.Mapper;

import java.io.IOException;

public class WordCountMapper extends Mapper<LongWritable, Text, Text, IntWritable> {
    /**
     * 一行执行一次
     *  100
     * 参数一 输入key    数据的偏移量
     * 参数二 输入value   行数据
     * @param key
     * @param value
     * @param context
     * @throws IOException
     * @throws InterruptedException
     *
     * 用于编写map逻辑的方法
     * 一对输入KV执行一次,案例中一行执行一次
     * 参数一 输入的key的内容  偏移量
     * 参数二 输入的value的内容  line   重点处理它
     */
    @Override
    protected void map(LongWritable key, Text value, Context context) throws IOException, InterruptedException {
        String[] ws = value.toString().split(" ");
        for (String word : ws) {
            // 单词 1  单词 1
            context.write(new Text(word),new IntWritable(1));
        }
    }
}