
scala
文章平均质量分 82
s
Toroidals
不患人之不能,而患己之不勉
展开
-
Spark 递归解析Json
package com.aisainfoimport org.apache.spark.sql.{Column, DataFrame, SparkSession}import org.apache.spark.sql.types._import org.apache.spark.sql.functions._/** * @Author Toroidal * @Date 2021/12/31 11:32 * @Version 1.0 */object Test { def main.原创 2021-12-31 17:00:05 · 1263 阅读 · 0 评论 -
scala-7 Akka并发编程框架
Akka并发编程框架简介Akka介绍Akka是一个用于构建高并发、分布式和可扩展的基于事件驱动的应用的工具包。Akka是使用scala开发的库,同时可以使用scala和Java语言来开发基于Akka的应用程序。Akka特性提供基于异步非阻塞、高性能的事件驱动编程模型内置容错机制,允许Actor在出错时进行恢复或者重置操作超级轻量级的事件处理(每GB堆内存几百万Actor)使用Akka可以在单机上构建高并发程序,也可以在网络中构建分布式程序。Akka通信过程以下图片说明了Ak原创 2021-01-22 16:41:42 · 476 阅读 · 0 评论 -
scala-6 高阶函数、隐式转换、隐式参数
高阶函数scala 混合了面向对象和函数式的特性,在函数式编程语言中,函数是“头等公民”,它和Int、String、Class等其他类型处于同等的地位,可以像其他类型的变量一样被传递和操作。高阶函数包含作为值的函数匿名函数闭包柯里化等等作为值的函数在scala中,函数就像和数字、字符串一样,可以将函数传递给一个方法。我们可以对算法进行封装,然后将具体的动作传递给方法,这种特性很有用。我们之前学习过List的map方法,它就可以接收一个函数,完成List的转换。示例示例说明原创 2021-01-22 16:33:47 · 261 阅读 · 0 评论 -
scala-5 Actor基于事件并发的编程模型
Actor介绍scala的Actor并发编程模型可以用来开发比Java线程效率更高的并发程序。我们学习scala Actor的目的主要是为后续学习Akka做准备。Java并发编程的问题在Java并发编程中,每个对象都有一个逻辑监视器(monitor),可以用来控制对象的多线程访问。我们添加sychronized关键字来标记,需要进行同步加锁访问。这样,通过加锁的机制来确保同一时间只有一个线程访问共享数据。但这种方式存在资源争夺、以及死锁问题,程序越大问题越麻烦。线程死锁Actor并发原创 2021-01-21 17:39:06 · 300 阅读 · 0 评论 -
scala-4 样例类、正则匹配、泛型、异常处理、类型转换
样例类样例类是一种特殊类,它可以用来快速定义一个用于保存数据的类(类似于Java POJO类),在后续要学习并发编程和spark、flink这些框架也都会经常使用它。定义样例类语法格式case class 样例类名([var/val] 成员变量名1:类型1, 成员变量名2:类型2, 成员变量名3:类型3)如果要实现某个成员变量可以被修改,可以添加var默认为val,可以省略示例 | 定义一个样例类需求定义一个Person样例类,包含姓名和年龄成员变量创建样例类的对象实例(原创 2021-01-21 17:22:43 · 347 阅读 · 0 评论 -
scala-3 类、object、特质
类和对象scala是支持面向对象的,也有类和对象的概念。我们依然可以基于scala语言来开发面向对象的应用程序。创建类和对象用法使用class来定义一个类使用new来创建对象示例创建一个Person类,并创建它的对象步骤创建一个scala项目,并创建一个Object添加main方法创建类和对象实现在IDEA中创建项目,并创建一个Object(main方法必须放在Object中)添加main方法创建一个Person类在main方法中创建Person类对象参原创 2021-01-18 11:17:27 · 503 阅读 · 0 评论 -
scala-1 开发环境安装搭建
开发环境安装学习如何编写scala代码之前,需要先安装scala编译器以及开发工具Java程序编译执行流程Scala程序编译执行流程scala程序运行需要依赖于Java类库,必须要有Java运行环境,scala才能正确执行根据上述流程图,要编译运行scala程序,需要jdk(jvm)scala编译器(scala SDK)接下来,需要依次安装以下内容:安装JDK安装scala SDK安装IDEA插件安装JDK安装JDK 1.8 64位版本,并配置好环境变量原创 2021-01-13 16:00:18 · 171 阅读 · 0 评论 -
scala-2 基础
scala简介scala是运行在JVM上的多范式编程语言,同时支持面向对象和面向函数编程早期,scala刚出现的时候,并没有怎么引起重视,随着Spark和Kafka这样基于scala的大数据框架的兴起,scala逐步进入大数据开发者的眼帘。scala的主要优势是它的表达性。接下来,我们要来学习:为什么要使用scala?通过两个案例对比Java语言和scala语言为什么使用scala开发大数据应用程序(Spark程序、Flink程序)表达能力强,一行代码抵得上Java多行,原创 2021-01-13 12:19:00 · 660 阅读 · 0 评论