Scala框架选择

我所知道的Scala持久层框架有:

1、Slick (typesafe出品)

2、Squeryl

3、Anorm(Play的持久层)

4、ScalaActiveRecord (基于Squeryl之上)

5、circumflex-orm

6、activate-framework(不只是scala版的hibernate,支持async db)

web框架的话

1、Spray(build on akka,完全异步,非阻塞,非常有前景,适合REST后端程序)

2、Play(还不是很习惯)

3、Scalatra(对akka,squeryl等都有现成集成,适合需要view层的)

4、Lift

我的选择:

1、对于api层

采用Spray+Akka+Slick/ScalaActiveRecord

2、对于普通web应用

采用Scalatra/Spray+Slick/ScalaActiveRecord

采用ScalaActiveRecord的原因:

1、基于Squeryl的rails风格

2、可集成数据库连接池(BoneCP)

3、可进行事务控制(支持optimistic locking)

采用Slick的原因:

1、typesafe官方产品

2、可集成数据库连接池

     参考 https://gist.github.com/filipelenfers/7914993

     参考 http://slick.typesafe.com/doc/2.1.0/connection.html#using-a-datasource

3、事务控制(目前好像不支持optimistic locking)

      参考 

spray集成actor的参考架构

spray-akka-todomvc

点赞
收藏

评论区

加载中...

相关推荐

MySQL:[Err] 1292 - Incorrect datetime value: ‘0000-00-00 00:00:00‘ for column ‘CREATE_TIME‘ at row 1

文章目录问题用navicat导入数据时,报错:原因这是因为当前的MySQL不支持datetime为0的情况。解决修改sql\mode:sql\mode:SQLMode定义了MySQL应支持的SQL语法、数据校验等,这样可以更容易地在不同的环境中使用MySQL。全局s

Oracle 分组与拼接字符串同时使用

SELECTT.,ROWNUMIDFROM(SELECTT.EMPLID,T.NAME,T.BU,T.REALDEPART,T.FORMATDATE,SUM(T.S0)S0,MAX(UPDATETIME)CREATETIME,LISTAGG(TOCHAR(

MySQL部分从库上面因为大量的临时表tmp_table造成慢查询

背景描述Time:20190124T00:08:14.70572408:00User@Host:@Id:Schema:sentrymetaLast_errno:0Killed:0Query_time:0.315758Lock_

手写Java HashMap源码

HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程22

Opencv中Mat矩阵相乘——点乘、dot、mul运算详解

Opencv中Mat矩阵相乘——点乘、dot、mul运算详解2016年09月02日00:00:36 \牧野(https://www.oschina.net/action/GoToLink?urlhttps%3A%2F%2Fme.csdn.net%2Fdcrmg) 阅读数:59593

P2P技术揭秘.P2P网络技术原理与典型系统开发

Modular.Java(2009.06)\.Craig.Walls.文字版.pdf:http://www.t00y.com/file/59501950(https://www.oschina.net/action/GoToLink?urlhttp%3A%2F%2Fwww.t00y.com%2Ffile%2F59501950)\More.E

Scala框架选择 - HelloWorld