大数据spark开发入门教程

大数据是互联网发展的方向,大数据人才是未来的高薪贵族。随着大数据人才的供不应求,大数据人才的薪资待遇也在不断提升。如果你也想进入大数据行业,也想学习大数据技术,大数据讲师认为,可以先从spark技术开始。

 

一、Spark是什么

Spark是一个微型的Java Web框架,它的灵感来自于Sinatra,它的目的是让你以zui小的代价创建出一个Java Web应用。

二、使用Spark

Spark的使用相当简单,首先你需要下载它的jar包以及它所依赖的jar包,或者你也可以直接通过maven来帮你做这件事情:
pom.xml中修改repository的配置:

<repository>

      <id>Spark repository</id>

      <url>http://46.137.105.19:8081/nexus/content/repositories/spark/</url></repository>

再添加spark的依赖

<dependency>

      <groupId>spark</groupId>

      <artifactId>spark</artifactId>

      <version>0.9.8-SNAPSHOT</version></dependency>

然后只要下面这一段代码,你就可以输出一个Helloworld了:

import static spark.Spark.*;import spark.*;

public class HelloWorld {

 

   public static void main(String[] args) {

 

      get(new Route("/hello") {

         @Override

         public Object handle(Request request, Response response) {

            return "Hello World!";

         }

      });

 

   }

 

}

打开http://localhost:4567/hello快快看看效果吧。
怎么样?够简单吧,接下来看下Spark中一些重要的组件:

三、Spark中的组件

Routes

Spark程序中,其请求的处理都是由Route来完成的,一个Route由三部分组成:

一个动词,比如getpostdeletetrace等等

一个路径,比如前面的例子中的/hello

回调函数,比如前面的例子中的handle

另外需要注意的一点是,Spark在处理请求进行路径匹配的时候是优先匹配先出现的Route,也就是如果你的请求匹配到了多个Route,那么Spark会调用先出现的那个来处理请求。
    另外Spark也支持在路径中设置参数,例如:

new Route("/user/:username"){};

你可以在handle方法里面通过调用requestparams方法来获取到路径中的参数:

request.params(":username");

Filters

除了Routes之外,Spark中另一个重要的组件就是Filterfilter分为before filterafter filter,两者分别可以在请求被Routes处理之前和被Routes处理之后获取Request或者对Response进行修改,比如
Before Filter:

before(new Filter() { // matches all routes

    @Override

    public void handle(Request request, Response response) {

        boolean authenticated;

        // ... check if authenticated

        if (!authenticated) {

            halt(401, "You are not welcome here");

        }

    }

 });

After Filter:

after(new Filter() {

    @Override

    public void handle(Request request, Response response) {

        response.header("foo", "set by after filter");

    }

 });

你也可以让Filter只过滤符合特定规则的URL

before(new Filter("/protected/*") {

    @Override

    public void handle(Request request, Response response) {

       // ... check if authenticated

       halt(401, "Go Away!");

    }

 });

以上就是千锋大数据讲师为大家分享的大数据spark入门技术,想要学习更多大数据的技术知识,快来这里拜神级大数据讲师为师吧!


猜你喜欢

转载自blog.csdn.net/xx666zz/article/details/79869888