scala
文章平均质量分 65
springlustre
这个作者很懒,什么都没留下…
展开
-
scala程序打包成可执行jar包(sbt package和sbt assembly)
使用sbt-assembly插件对sbt构建的scala程序进行打包,生成可以通过“java -jar”命令来执行jar包。原创 2022-05-28 22:01:41 · 2131 阅读 · 0 评论 -
Scala中HashSet的实现原理详解
HashSet是平时常用到的数据结构之一,其保证元素是不重复的。 本文将用一个简单的例子来解释下scala语言中HashSet内部的工作原理,看下add和remove到底是怎样工作的。用法示例 val s = mutable.HashSet[String]() s.add("a") s.add("a") s.add("b") println(s)HashMap实原创 2018-03-08 10:27:13 · 3528 阅读 · 0 评论 -
scala中HashMap的实现原理解析
HashMap是平时最常用到的数据结构之一,查找和增删元素具有O(1)的时间复杂度。 本文将用一个简单的例子来解释下scala语言中HashMap内部的工作原理,看下get和put到底是怎样工作的。用法示例 def main(args: Array[String]): Unit = { val m = mutable.HashMap[String,Int]() m.put("a"原创 2018-03-07 09:37:37 · 9184 阅读 · 0 评论 -
scala中Split函数源码解析
split用法如下:scala> val s = "qw#ert#yu#u"s: String = qw#ert#yu#uscala> s.split("#")res5: Array[String] = Array(qw, ert, yu, u)查看源码可以看到,实现是在Java的String类中:public String[] split(String regex原创 2018-02-05 15:51:29 · 955 阅读 · 0 评论 -
Akka中Actor消息通信的实现原理(源码解析)
Akka中通过下面的方法向actor发送消息! tell 意味着 “fire-and-forget”,即异步的发送消息无需等待返回结果? ask 异步发送消息并返回代表可能回复的Future。消息在每个发件人的基础上是有序的。MailBoxAkka邮箱包含发往Actor的消息。通常每个Actor都有自己的邮箱,但是也有例外,比如BalancingPool所有路由将共享原创 2018-01-17 10:56:52 · 4701 阅读 · 0 评论 -
Akka基本概念——Actor引用、路径和地址
本章描述了如何在分布式的Actor系统中识别和定位Actor。 其中涉及到Actor系统分层监督的中心思想以及Actor之间经过多网络节点的消息通信。 上图显示了Actor系统中最重要的实体之间的关系什么是 Actor Reference (Actor引用)actor reference是ActorRef的的子类型,ActorRef的主要作用是支持向它 所代表的Actor发送消息。 每个a翻译 2018-01-16 11:26:17 · 3976 阅读 · 2 评论 -
akka-http使用CORS(跨域资源共享)实现跨域请求
我们平时在开发过程中经常用到前后端分离,当前端喝后台分别部署的时候则会存在跨域问题(协议,ip,端口中任一个不同),常用的方法有使用jsonp跨域(只支持get请求),或者使用nginx反向代理等。这里介绍cors(跨域资源共享)方法。简介跨源资源共享标准通过新增一系列 HTTP 头,让服务器能声明哪些来源可以通过浏览器访问该服务器上的资源。另外,对那些会对服务器数据造成破坏性影响的 HTTP 请求原创 2017-04-14 10:24:29 · 2987 阅读 · 0 评论 -
akka-http中使用websocket方法详解
WebSocket介绍WebSocket是HTML5出的协议,是一个新协议,跟HTTP协议基本没有关系,但是它完成一部分握手是通过http协议,可以说它是HTTP协议上的一种补充。在WebSocket出现之前,我们有一些其它的实时通讯方案,比较常用的有轮询,长连接等。轮询是最早的一种实现实时web应用的方案;原理比较简单易懂,就是客户端以一定的时间间隔向服务器发送请求, 以频繁请求的方式来保持客户原创 2017-03-16 19:58:16 · 5208 阅读 · 0 评论 -
scala中函数组合器的用法(map,filter,zip,foreach,groupBy,flatten,drop等)
本文主要记录了scala学习中的常用函数组合器,包括map,filter,zip,foreach,groupBy,flatten,drop等。mapmap方法可以将某个函数应用到集合中的每个元素并产出其结果的集合。举例:val names = List("a","b","c")names.map(_.toUpperCase)得到结果List("A","B","C")foreachforeach和m原创 2016-10-21 12:36:58 · 12704 阅读 · 0 评论 -
scala中的常用集合
scala中的常用集合本文主要记录了scala学习中的一些常用集合,主要包括序列Seq;值的集合Set;键值对构成的对偶的映射Map。概述Scala提供了一系列的集合类的实现。 Scala中所有的集合都扩展了Iterable特质。集合又可以分为三类:有先后次序的序列Seq;值的集合Set;键值对构成的对偶的映射Map。 三类集合下分别还实现了特殊访问方式的特质:可以由下标来进行随机访问的Inde原创 2016-10-21 12:34:17 · 1124 阅读 · 0 评论 -
scala根据经纬度获取两点距离
package utilimport play.api.libs.json.Json/** * Created by wangchunze on 2016/1/20. */object simpleUtil { def getDistatce(lat1:Double,lon1:Double,lat2:Double,lon2:Double)={ if(lat1!=0 &&原创 2016-05-11 01:11:30 · 3567 阅读 · 0 评论 -
scala随机数生成,生成一组不重复随机数算法
scala随机数生成函数(new util.Random).nextInt(n) 返回一个0-n(不包括n) 的随机数比如scala> (new util.Random).nextInt(3)res7: Int = 1返回一个[0, 2]的随机数scala生成一组不重复的随机数1、循环获取随机数,再到 list中找,如果没有则添加def randomNew(n:Int)=原创 2015-09-30 16:28:59 · 25429 阅读 · 0 评论 -
scala中的函数组合器map,foreach,flatmap,flatten,filter,zip等用法
1、mapmap方法可以将某个函数应用到集合中的每个元素并产出其结果的集合,比如val names=List("a","b","c")可以用names.map(_.toUpperCase)得到List("A","B","C")2、foreachforeach和map相似,只不过它没有返回值,foreach只要是为了对参数进行作用。比如 nam原创 2015-09-29 12:37:49 · 18435 阅读 · 0 评论 -
scala时间处理-获取今天日期,昨天日期,本周时间,本月时间,时间戳转换日期,时间比较
因为做一个考勤系统,需要用到scala的时间和日期的处理,包括 获取今天日期,昨天日期,本周时间,本月时间,时间戳转换日期等,特此总结了一下。 1、获取今天日期 def getNowDate():String={ var now:Date = new Date() var dateFormat:SimpleDateFormat = new SimpleDateFormat("原创 2015-08-04 10:40:14 · 61180 阅读 · 6 评论 -
scala语言使用play2框架连接mysql数据库
1、首先在conf的application.conf中添加如下两行,即添加mysql驱动,其中root分别为用户名和密码,todolist是数据库名2、打开最外层的build.sbt文件,在基础上添加依赖,如下所示,5.1.18和数据库版本不一样貌似也可以,我用的5.0数据库3、在命令行输入play,进入play后输入reload,之后在运行update,会自动下载添加相关原创 2015-07-17 14:33:50 · 2083 阅读 · 0 评论 -
利用angular 在play&scala中实现ajax
在play中实现ajax官方给出jquery实现,我捉摸了一上午终于找到一种利用angular实现的方法。angular是一个js的框架1、创建一个scala的play工程,修改index.scala.html如下(message: String)html>html> head> title>ajaxtitle> link rel="s原创 2015-08-10 15:51:11 · 848 阅读 · 0 评论