首页
学习
活动
专区
圈层
工具
发布
    • 综合排序
    • 最热优先
    • 最新优先
    时间不限
  • 来自专栏函数式编程语言及工具

    浅谈Slick(3)- Slick201:从fp角度了解Slick

    表行定义操作方法基本都在slick.lifted.AbstractTable里、表属性定义在slick.model命名空间里、而大部分的帮助支持函数都在slick.lifted命名空间的其它对象里。 [Int,slick.dbio.NoStream,slick.dbio.Effect.Write with slick.dbio.Effect.Write] = slick.dbio.SynchronousDatabaseAction [Unit,slick.dbio.NoStream,slick.dbio.Effect.Read with slick.dbio.Effect.Write with slick.dbio.Effect.Transactional [Unit,slick.dbio.NoStream,slick.dbio.Effect.Read with slick.dbio.Effect.Write with slick.dbio.Effect.Transactional [Unit,slick.dbio.NoStream,slick.dbio.Effect.Read with slick.dbio.Effect.Write with slick.dbio.Effect.Transactional

    3.2K70发布于 2018-01-05
  • 来自专栏函数式编程语言及工具

    浅谈Slick(4)- Slick301:我的Slick开发项目设置

    Slick把jdbc api集成到scala编程语言里,能够支持多种数据库。也就是说Slick提供了多种数据库的驱动api。 我们从表结构设定开始,先看看上篇Slick101里的例子: 1 package com.datatech.learn.slick101 2 import slick.driver.H2Driver.api 2 import com.bayakala.learn.slick301.config.DBConfig 3 import com.bayakala.learn.slick301.access.DAOs 10 import slick.driver. := "2.11.8" 6 7 libraryDependencies ++= Seq( 8 "com.typesafe.slick" %% "slick" % "3.1.1", 9

    2.7K100发布于 2018-01-05
  • 来自专栏李维亮的博客

    jQuery幻灯片插件slick

    简介 slick 是一个基于 jQuery 的幻灯片插件,具有以下特点: 支持响应式 浏览器支持 CSS3 时,则使用 CSS3 过度/动画 支持移动设备滑动 支持桌面浏览器鼠标拖动 支持循环 支持左右控制 支持动态添加、删除、过滤 支持自动播放、圆点、箭头、回调等等 兼容 浏览器兼容:兼容 IE7+ 及其他主流浏览器,若要兼容 IE7,需修改 CSS(slick.css)。 演示 下载 使用方法 1、引入文件 <link rel="stylesheet" href="style/<em>slick</em>.css"> <script src="script/jquery.min.js">< /script> <script src="script/<em>slick</em>.min.js"></script> 2、HTML

    <a href="http () options : object 初始化 <em>slick</em> unslick() 销毁 <em>slick</em> slickNext() 切换下一张 slickPrev() 切换上一张 slickPause()

    4.2K30发布于 2021-07-09
  • 来自专栏函数式编程语言及工具

    浅谈Slick(2)- Slick101:第一个动手尝试的项目

       看完Slick官方网站上关于Slick3.1.1技术文档后决定开始动手建一个项目来尝试一下Slick功能的具体使用方法。我把这个过程中的一些了解和想法记录下来和大家一起分享。 ) 在Slick的Database配置方面forConfig("confItem")是比较灵活、方便实用的。 Slick是通过typesafe-config来解析配置文件的。 现在我们先设计表结构schema: 1 package com.datatech.learn.slick101 2 import slick.driver.H2Driver.api._ 3 object {Success,Failure} 6 7 import slick.driver.H2Driver.api._ 8 object slick101 { 9 10 /* ----- schema

    2K90发布于 2018-01-05
  • 来自专栏函数式编程语言及工具

    浅谈Slick(1)- 基本功能描述

    Slick把数据库编程融入到scala编程中,编程人员可以不需要编写SQL代码。我把Slick官方网站上Slick3.1.1文档的Slick介绍章节中的一些描述和例子拿过来帮助介绍Slick的功能。 下面是Slick数据库和类对象关系对应的一个例子: 1 import slick.driver.H2Driver.api._ 2 object slickIntro { 3 case class [Seq[String],String,slick.dbio.Effect.Read] = slick.driver.JdbcActionComponent$QueryActionExtensionMethodsImpl [Int,slick.dbio.NoStream,slick.dbio.Effect.Write] ... 4 val qAdd1 = (coffees returning coffees.map(_ Mountain",price=828.0) 7 //> qAdd2 : slick.profile.FixedSqlAction[Int,slick.dbio.NoStream,slick.dbio.Effect.Write

    1.1K70发布于 2018-01-05
  • 来自专栏函数式编程语言及工具

    细谈Slick(6)- Projection:ProvenShape,强类型的Query结果类型

      在Slick官方文档中描述:连接后台数据库后,需要通过定义Projection,即def * 来进行具体库表列column的选择和排序。 从Slick源代码中我们可以找到Projection定义: abstract class AbstractTable[T](val tableTag: Tag, val schemaName: Option 我们来看看Slick官方文件上的例子: import scala.reflect.ClassTag // A custom record class case class Pair[A, B 实际上Slick本身提供了Tuple、Case Class、HList等类型的默认Shape隐式实例,所以我们可以把Projection直接写成 def * = (...) 下面是本次示范的源代码: 1 import slick.collection.heterogeneous.{ HList, HCons, HNil } 2 import slick.collection.heterogeneous.syntax

    1.8K50发布于 2018-01-05
  • 来自专栏字根中文校对软件

    Scala 的数据库访问框架:Slick 3.0 移除了 session 相关的 API

    Scala 的数据库访问框架:Slick 3.0 移除了 session 相关的 API Slick 3 对于 Slick 2 的改变相当于 Python 3 至于 Python 2 的改变。 Slick 3 的新特性集中在 :大量使用组合的设计模式,不需要显式声明session,非阻塞,stream支持的 reactive 等 。 不过我最喜欢这个方法: setFetchSize 。 具体来说: 在Scala slick 2.x 中: db.withSession{    implicit session =>      query.run } 在Scala slick 3.x 中需要替换为 /slick/blob/master/slick-testkit/src/main/scala/com/typesafe/slick/testkit/tests/CountTest.scala 从Slick 2.X 迁移到 Slick 3.X http://stackoverflow.com/questions/30718671/how-to-port-slick-2-1-plain-sql-queries-to-slick

    911100发布于 2018-04-16
  • 来自专栏函数式编程语言及工具

    细谈Slick(5)- 学习体会和将来实际应用的一些想法

       通过一段时间的学习和了解以及前面几篇关于Slick的讨论后对Slick这个函数式数据库编程工具有了些具体的了解。 回顾我学习Slick的目的,产生了许多想法,觉着应该从实际的工作应用角度把我对Slick目前能够达到的目的以及在现有功能优势和特点下如何进一步改进才能正真符合IT系统对数据库程序编程和运行效率的要求。 首先谈谈Slick的特点:主体方面Slick为函数式编程模式带来了SQL编程,可以把数据库表当作scala语言中的集合来对待。 另一方面与同是基于jdbc之上的通用ORM库比较,Slick可以实现更高效率的关系表数据提取。 Slick实现函数组合部分主要分两个层次:一是Query组合:即把多个Query组成一个Query。 但以Slick当前所能提供的功能还无法完全满足偏重数据处理(data processing)编程的需要。

    1.6K80发布于 2018-01-05
  • 来自专栏Web前端

    React 图片轮播 Carousel:从入门到进阶

    这里我们使用 react-slick,这是一个基于 Slick 的 React 轮播组件库。 import "slick-carousel/slick/slick.css"; import "slick-carousel/slick/slick-theme.css";3. import React from 'react';import Slider from 'react-slick';import 'slick-carousel/slick/slick.css'; import import React from 'react';import Slider from 'react-slick';import 'slick-carousel/slick/slick.css'; import /slick/slick.css'; import 'slick-carousel/slick/slick-theme.css';const DynamicSlider = () => { const

    89810编辑于 2024-11-20
  • 来自专栏大数据

    React 图片轮播 Carousel:从入门到进阶

    这里我们使用 react-slick,这是一个基于 Slick 的 React 轮播组件库。 import "slick-carousel/slick/slick.css"; import "slick-carousel/slick/slick-theme.css"; 3. import React from 'react'; import Slider from 'react-slick'; import 'slick-carousel/slick/slick.css'; import React from 'react'; import Slider from 'react-slick'; import 'slick-carousel/slick/slick.css'; /slick/slick.css'; import 'slick-carousel/slick/slick-theme.css'; const DynamicSlider = () => { const

    79710编辑于 2024-11-22
  • 来自专栏函数式编程语言及工具

    Akka(27): Stream:Use case-Connecting Slick-dbStream & Scalaz-stream-fs2

     在以前的博文中我们介绍了Slick,它是一种FRM(Functional Relation Mapper)。 所以我们只能从小众心态来探讨如何改善Slick现状,希望通过与某些Stream库集成,在Slick FRM的基础上恢复一些人们熟悉的Recordset数据库光标(cursor)操作方式,希望如此可以降低 刚好,在这篇讨论里我们希望能介绍一些Akka-Stream和外部系统集成对接的实际用例,把Slick数据库数据载入连接到Akka-Stream形成streaming-dataset应该是一个挺好的想法。 Slick和Akka-Stream可以说是自然匹配的一对,它们都是同一个公司产品,都支持Reactive-Specification。 Slick提供了个Dababase.stream函数可以构建这个Publisher: /** Create a `Publisher` for Reactive Streams which, when

    1.1K50发布于 2018-01-05
  • 来自专栏函数式编程语言及工具

    FunDA(2)- Streaming Data Operation:流式数据操作

    为目标FRM,那么这个ActionRow的类型就是Slick的DBIO[T]了: 1 package com.bayakala.funda.rowtypes 2 import slick.dbio._ 这个问题用Slick Query还真的不太容易解决(能不能解决就不想费功夫去想了),这是因为FRM的SQL批次处理弱点。 先用下面这段代码来设置测试数据: 1 import slick.dbio.DBIO 2 import slick.driver.H2Driver.api._ 3 4 import scala.concurrent.duration $$anon$7@27216cd slick.driver.JdbcActionComponent$UpdateActionExtensionMethodsImpl$$anon$7@558bdf1f slick.driver.JdbcActionComponent ._ 3 object ActionType { 4 type FDAAction[T] = DBIO[T] 5 } 1 import slick.dbio.DBIO 2 import slick.driver.H2Driver.api

    1.6K60发布于 2018-01-05
  • 来自专栏函数式编程语言及工具

    FunDA(9)- Stream Source:reactive data streams

    Slick3.x已经增加了支持Reactive-Streams功能,可以通过Reactive-Streams API来实现有限内存空间内的无限规模数据读取,这正符合了FunDA的设计理念:高效、便捷、安全的后台数据处理工具库 我们在前面几篇讨论里介绍了Iteratee模式,play-iteratees支持Reactive-Streams并且提供与Slick3.x的接口API,我们就在这篇讨论里介绍如何把Slick-Reactive-Streams 根据Slick官方文档:Slick可以通过db.stream函数用Reactive-Stream方式来读取后台数据,具体的配置如下: val disableAutocommit = SimpleDBIO Slick官方网页只提供了下面这个使用publisher的例子: val fut = publisher.foreach(s => println(s)) Await.ready(fut,Duration.Inf 下面我们看看FunDA-Example中fda_typedStream的具体应用例子: package com.bayakala.funda.fdasources.examples import slick.driver.H2Driver.api

    859100发布于 2018-01-05
  • 来自专栏点滴积累

    geotrellis使用(三十)使用geotrellis读取PostGIS空间数据

    数据库,我当时回答他可以用传统的JDBC方式或者使用geotrellis.slick。 一、geotrellis.slick 简介 geotrellis.slick是geotrellis的一个模块,它是对slick的封装。 先介绍一下slick,它是一款开源的scala语言数据库处理框架,官网http://slick.lightbend.com/。 二、geotrllis.slick 使用 2.1 引用 话不多说,直接进入干货。 首先是对geotrllis.slick的引用,在build.sbt中的libraryDependencies添加如下项: "org.locationtech.geotrellis" %% "geotrellis-slick

    2.1K70发布于 2018-04-28
  • 来自专栏函数式编程语言及工具

    FunDA(1)- Query Result Row:强类型Query结果行

    这项功能解决了FRM如Slick数据操作以SQL批次模式为主所产生的问题。 在前面的一篇讨论中我们介绍了通过Shape来改变Slick Query结果行类型。不过这样的转变方式需要编程人员对Slick有较深的了解。更重要的是这种方式太依赖Slick的内部功能了。 下面先看一个典型的Slick Query例子: 1 import slick.driver.H2Driver.api._ 2 import scala.concurrent.duration._ 这个类型现在基本上完全是针对Slick而设的,成功完成功能实现后期再考虑松散耦合问题。这个类型需要一个目标行类型定义和一个类型转换函数,外加一些Slick profile, database等信息。 ._ import scala.concurrent.Await import slick.driver.JdbcProfile object DataRowType { class FDADataRow

    1.2K90发布于 2018-01-05
  • 来自专栏函数式编程语言及工具

    FunDA(12)- 示范:强类型数据源 - strong typed data sources

        FunDA设计的主要目的是解决FRM(Functional Relation Mapping)如Slick这样的批次型操作工具库数据源行间游动操作的缺失问题。 指令行ActionRow是由Slick-DBIOAction构成,可以发送回后台数据库更新数据。 Slick运算Query返回的结果集合内的数据行类型一般是Tuple类型。因为无法使用字段名,是弱类型。 " %% "slick" % "3.1.1", "com.typesafe.slick" %% "slick-testkit" % "3.1.1" % "test", "org.slf4j" % "slf4j-nop" % "1.7.21", "com.h2database" % "h2" % "1.4.191", "com.typesafe.slick" %% "slick-hikaricp

    1.2K100发布于 2018-01-05
  • 来自专栏函数式编程语言及工具

    FunDA:一个开源的函数式数据处理工具库,也是Slick的补充

      如果你是一个Slick用户,或者你是一个数据库编程人员正在尝试进入函数式编程模式,那么FunDA可能会帮到你。 目前市面上FRM(Functional Relational Mapper),即函数式的数据库处理工具库的选择并不多,Typesafe公司的Slick可能是最通用的选择了。 整体上来说:Slick还是一个不错的函数式数据库编程工具,用scala语言,很多地方引用了函数式的抽象模式和对象(functional abstractions and objects)。 对于那些习惯了使用ORM(Object Relational Mapper)的资深数据库软件编程人员来说,这几乎是他们在大型复杂数据库软件开发项目中无法使用Slick的致命弱点。 FunDA在Slick功能的基础上增加了recordset数据集逐行处理功能,让使用者感觉亲切,能更灵活自然的在前台内存里实现强大的数据处理功能。

    80060发布于 2018-01-05
  • 来自专栏函数式编程语言及工具

    Akka(35): Http:Server side streaming

    Query读取数据库表内数据后转成Reactive-Publisher,然后把publisher转成Akka-Stream-Source,如下: object SlickDAO { import slick.jdbc.H2Profile.api ._ val dbConfig: slick.basic.DatabaseConfig[slick.jdbc.H2Profile] = slick.basic.DatabaseConfig.forConfig ("slick.h2") val db = dbConfig.db case class CountyModel(id: Int, name: String) case class CountyTable ._ val dbConfig: slick.basic.DatabaseConfig[slick.jdbc.H2Profile] = slick.basic.DatabaseConfig.forConfig ("slick.h2") val db = dbConfig.db case class CountyModel(id: Int, name: String) case class CountyTable

    1.1K50发布于 2018-01-05
  • 来自专栏函数式编程语言及工具

    FunDA(16)- 示范:整合并行运算 - total parallelism solution

    fail to create table Await.ready(futCreateTable,Duration.Inf) //truncate data, only available in slick row: StateTable#TableElementType) = StateModel(row.id,row.name) val stateLoader = FDAViewLoader(slick.jdbc.H2Profile CountyTable#TableElementType) = CountyModel(row.id,row.name) val countyLoader = FDAViewLoader(slick.jdbc.H2Profile {Failure, Success} import slick.jdbc.H2Profile.api._ import Models._ import fs2.Strategy object ParallelExecution fail to create table Await.ready(futCreateTable,Duration.Inf) //truncate data, only available in slick

    937100发布于 2018-01-05
  • 来自专栏函数式编程语言及工具

    FunDA(15)- 示范:任务并行运算 - user task parallel execution

    fail to create table Await.ready(futCreateTable,Duration.Inf) //truncate data, only available in slick row: StateTable#TableElementType) = StateModel(row.id,row.name) val stateLoader = FDAViewLoader(slick.jdbc.H2Profile CountyTable#TableElementType) = CountyModel(row.id,row.name) val countyLoader = FDAViewLoader(slick.jdbc.H2Profile {Failure, Success} import slick.jdbc.H2Profile.api._ import Models._ import fs2.Strategy object ParallelTasks fail to create table Await.ready(futCreateTable,Duration.Inf) //truncate data, only available in slick

    78790发布于 2018-01-05
领券