是否有一个如何使用Sclick的Slick 2.0.1库连接到MySQL数据库的示例?我用谷歌搜索找不到最新的例子......
最近,我一直在考虑将我用PHP开发的Web应用程序的代码移植到Scala中.我一直在寻找一种编程语言,它具有(i)具有大量用户的Web应用程序框架,(ii)提供编译时错误检查,(iii)不错的测试工具等等... 使用Scala和Play框架开发Web应用程序的一些案例研究(例如, huffpost和cousera),它开始看起来很吸引我,我决定试一试.
由于前一个项目的所有数据都驻留在MySQL数据库中,因此我查看了Scala为我的程序连接到MySQL提供的内容.我遇到了Slick.我遵循了Typesafe Activator中的Hello-Slick示例,它引导我如何使用内存数据库(即 h2),我喜欢它的语法和抽象级别.现在,我想使用Slick和MySQL.我尝试更改import语句
import scala.slick.driver.H2Driver.simple._
至
import scala.slick.driver.MySQLDriver.simple._
在这两个HelloSlick.scala和Tables.scala在上述例子中(请参阅下面的代码的完整副本).但是,我编译时收到以下错误消息:
/Users/kotaro/Documents/Scala/hello-slick/src/test/scala/TablesSuite.scala
值ddl不是scala.slick.lifted.TableQuery [供应商]的成员
def createSchema()=(suppliers.ddl ++ coffees.ddl).create
Run Code Online (Sandbox Code Playgroud)^
有谁知道是什么原因造成的?根据这篇文章(尝试连接到MySql时的光滑异常),我可能会缺少添加一些依赖项,虽然我得到的错误消息是不同的.如果有一个很好的例子可以让我掌握如何使用Slick和MySQL,这也会有很大帮助.
我在XAMPP 1.7.3中使用Scala 2.10.3,MySQL,OS X 10.8和JRE 1.6.
非常感谢您的帮助!
以下是代码的完整副本.
HelloSlick.scala
import scala.slick.driver.MySQLDriver.simple._
//import scala.slick.driver.H2Driver.simple._
// The main application
object HelloSlick extends App {
// The query interface for the Suppliers table
val suppliers: TableQuery[Suppliers] = TableQuery[Suppliers]
// the query interface for the Coffees …Run Code Online (Sandbox Code Playgroud) 我正在寻找一种从OpenStreetMap(OSM)数据中准确检索街道交叉点的方法.我知道提出并回答了类似的问题,但我可以从建议的方法中检索的数据不是很准确.
首先,我知道以下问题:
上述问题的答案表明:
"查询给定边界框中的所有方式,并查找由两个或多个方式共享的节点,如另一个答案中所述."
我按照这个建议编写了一个python脚本,它从我从OpenStreetMap下载的xml文件(osm文件)中提取节点元素.以下是代码:
try:
from xml.etree import cElementTree as ET
except ImportError, e:
from xml.etree import ElementTree as ET
def extract_intersections(osm, verbose=True):
# This function takes an osm file as an input. It then goes through each xml
# element and searches for nodes that are shared by two or more ways.
# Parameter:
# - osm: An xml file that contains OpenStreetMap's map information
# - verbose: If true, print some …Run Code Online (Sandbox Code Playgroud) 我对matplotlib的hist()函数有疑问.
我正在编写一个代码来绘制数值的直方图,其值从0到1不等.例如:
values = [0.21, 0.51, 0.41, 0.21, 0.81, 0.99]
bins = np.arange(0, 1.1, 0.1)
a, b, c = plt.hist(values, bins=bins, normed=0)
plt.show()
Run Code Online (Sandbox Code Playgroud)
上面的代码生成一个正确的直方图(由于我没有足够的声誉,我无法发布图像).就频率而言,它看起来像:
[0 0 2 0 1 1 0 0 1 1]
Run Code Online (Sandbox Code Playgroud)
我想将此输出转换为离散概率质量函数,即对于上面的示例,我想获得以下频率值:
[ 0. 0. 0.333333333 0. 0.166666667 0.166666667 0. 0. 0.166666667 0.166666667 ] # each item in the previous array divided by 6)
Run Code Online (Sandbox Code Playgroud)
我想我只需要将hist()函数中的参数更改为'normed = 1'.但是,我得到以下直方图频率:
[ 0. 0. 3.33333333 0. 1.66666667 1.66666667 0. 0. 1.66666667 1.66666667 ]
Run Code Online (Sandbox Code Playgroud)
这不是我所期望的,我不知道如何得到离散概率质量函数,其总和应为1.0.在以下链接中提出了类似的问题(链接到问题),但我认为问题没有得到解决.
我提前感谢您的帮助.