
Scala
AISeekOnline
* 不要在该努力拼搏的年纪选择安逸 *
展开
-
fastjson 输出double类型强制转为科学计数法问题
在json输出的时候,当double类型的数值过大或者过小的时候,往会在内部被强制转化为科学计数法形式输出,如果不需要科学计数法,则可以通过使用BigDecimal类来表示double类型,代码如下:Java版本:import com.alibaba.fastjson.JSONObject;import java.math.BigDecimal;/** * Created by z...原创 2020-04-01 21:43:39 · 5156 阅读 · 1 评论 -
Scala并发编程
1. 使用Actor的并发Scala的actor提供了一种基于事件的轻量级线程。只要使用scala.actors.Actor伴生对象的actor方法,就可以创建一个actor。它接受一个函数值/闭包做参数,一创建好就开始运行。用!()方法给actor发消息,用receive()方法从actor接收消息。receive()也可以闭包为参数,通常用模式匹配处理接收到的消息。我们看个例子转载 2018-02-05 16:20:45 · 1287 阅读 · 0 评论 -
scala 多线程actor
[sql] view plain copyjava--thread:共享全局变量的加锁机制,不可避免造成死锁 scala--actor 在做分布式的时候一定不要有共享全局的变量,更不能做加锁机制。 每个actor都和公司的一个员工一样,都有自己的循环器,每天循环自己的邮箱查看邮件,回复邮件作出应答。 !转载 2018-02-05 16:41:18 · 366 阅读 · 0 评论 -
深入理解Scala的隐式转换系统
摘要:通过隐式转换,程序员可以在编写Scala程序时故意漏掉一些信息,让编译器去尝试在编译期间自动推导出这些信息来,这种特性可以极大的减少代码量,忽略那些冗长,过于细节的代码。 使用方式:1.将方法或变量标记为implicit2.将方法的参数列表标记为implicit3.将类标记为implicit Scala支持两种形式的隐式转换:转载 2018-02-12 10:55:09 · 251 阅读 · 0 评论 -
配置Log4j(很详细)
来自: http://www.blogjava.net/zJun/archive/2006/06/28/55511.htmlLog4J的配置文件(Configuration File)就是用来设置记录器的级别、存放器和布局的,它可接key=value格式的设置或xml格式的设置信息。通过配置,可以创建出Log4J的运行环境。1. 配置文件Log4J配置文件的基本格式如下:转载 2018-02-07 17:13:00 · 261 阅读 · 0 评论 -
Scala通过类名称字符串构建实例
最近有一个这样的需求,定义好功能入口,通过传递不同的参数实现不同的功能,而各个功能的具体是实现是在类里面,由此需要通过传递进来的字符窜去构建需要的类。类似Java,Scala也是可以通过反射机制去创建实例通过Class.forName("类名称").newInstance()可以得到相应的实例package com.haizhi.minplat/** * Created by...原创 2018-12-20 20:26:26 · 6710 阅读 · 4 评论 -
Scala 通过HttpClients发送get和post请求
Scala 通过HttpClients发送get和post请求由于之前的工程代码都是使用Scala开发的,而最近工作中涉及到一个新功能需要发送post请求后端接口,今把如何使用HttpClients做个笔记。get请求def getResponse(url: String, header: String = null): String = { val httpClient = Htt...原创 2019-01-10 00:18:36 · 15745 阅读 · 0 评论 -
Spark Caused by: java.io.NotSerializableException 序列化异常踩过的坑
最近有需求需要在driver端创建好类实例,然后在rdd里面调用,但是使用过程中发现 Caused by: java.io.NotSerializableException,即序列化异常,通过查处网上资料发现是构建的类没有继承Serializable,没有继承Serializable的类是不会自动执行自动序列化操作的,因此我把构建的类继承了Serializable这个类,再次运行的时候发现依旧是序...原创 2019-01-22 21:03:48 · 18876 阅读 · 3 评论 -
GraphX挖掘极大团
设计思路:聚合节点的所有邻居求边上节点的共同邻居,并通过共同邻居生成极大团的ID,发送至源节点和目标节点获取收到极大团ID的节点代码如下:package mu.atlas.graph.communityimport mu.atlas.graph.utils.BaseTool._import org.apache.spark.graphx.{EdgeContext, Graph,...原创 2019-08-28 23:00:13 · 344 阅读 · 0 评论