ScalikeJDBC是一个Scala的JDBC框架,适用于绝大多数RDBMS数据库(关系数据库)

重要的是,在这几天简单的使用了一下,用sqlserver来测试了一下用mysql或者h2的scalikeJDBC,可以得出结果:

  • 数据库语言的语法和driver相对应。
  • 而scalikeJDBC的代码可通用,多个不同数据库能一起使用,和能够读取相关线程池HikariCP(保持和数据库的连接)的配置文件
  • 不同的是线程池内的相关数据库配置文件(包含驱动等相关信息)和不同是数据库语言的语法

当要把scalikeJDBC做成rest-sql,应该考虑的重点是,

  • 返回类型转化为Map键值对
  • scalikeJDBC与不同的数据库之间的共同关联
  • repo对应的方法和JDBCEngine的方法
  • 在scalikejdbc内的SQL类内方法
  • 考虑到存在批量操作,需要fetchSize参数和是否authcommit,即事务
  1. 首先,在安装了sqlserver后,简单的使用了数据库语言进行增删改查,能够看到需要的,执行后的结果是:(执行的行数)和(时间)
  2. 数据库内的DDL和DML,
    • DDL(data definition language): DDL比DML要多,主要的命令有CREATE、ALTER、DROP等,DDL主要是用在定义或改变表(TABLE)的结构,数据类型,表之间的链接和约束等初始化工作上,他们大多在建立表时使用
    • DML(data manipulation language): 它们是SELECT、UPDATE、INSERT、DELETE,就象它的名字一样,这4条命令是用来对数据库里的数据进行操作的语言
  3. rest中的put 、post、get和delete,考虑相对应的数据库内的读写分离,
  4. scalikeJDBC是把sql语句切分开成为具体sql(SELECT等句子)和参数。===》SQL SERVER   =》回来具体的流或者具体的数据。
  5. 整个数据库和编码的数据格式的转换,例如sql server中没有存在blob格式,不同的数据库要注意mysql或者sqlserver等数据库的数据等格式,其中主要的 是时间戳的TIMESTAMP的格式转换和图片的格式转换。
  6. scalikeJDBC的engine将scalikeJDBC中的具体执行过程分别成为不同的过程。
      //将sql语句执行的固定scalikeJDBC语句
    NamedDB(ctx.dbName) localTx { implicit session => }
  7. 当我用execute能够执行很多数据库内的语言,对表的增删改、索引、视图的增删改等
      val createSQL: SQL[Nothing,NoExtractor] =SQL("""
    
      """)
    createSQL.execute.apply()(NamedAutoSession(dbname))
  8. 具体拆分sql server语句和参数,通过url+sql语句,而拆分语句和参数,具体执行
  9. 键值对,_*==>拆分seq等集合,把Seq展开, 变成很多个参数的意思
  10. 明确
    queryTags等具体需求等。。。。。。
  11. scalikeJDBC的同步与异步。
  12. 交易控制
  13. 考虑好反应式流的具体功能与需求

scalikeJDBC的restapi的更多相关文章

  1. restapi(3)- MongoDBEngine : MongoDB Scala编程工具库

    最近刚好有同事在学习MongoDB,我们讨论过MongoDB应该置于服务器端然后通过web-service为客户端提供数据的上传下载服务.我们可以用上节讨论的respapi框架来实现针对MongoDB ...

  2. restapi(4)- rest-mongo : MongoDB数据库前端的httpserver

    完成了一套标准的rest风格数据库CRUD操作httpserver后发现有许多不足.主要是为了追求“通用”两个字,想把所有服务接口做的更“范generic”些,结果反而限制了目标数据库的特点,最终产生 ...

  3. restapi(8)- restapi-sql:用户自主的服务

    学习函数式编程初衷是看到自己熟悉的oop编程语言和sql数据库在现代商业社会中前景暗淡,准备完全放弃windows技术栈转到分布式大数据技术领域的.但是在现实中理想总是不如人意,本来想在一个规模较小的 ...

  4. 中国Azure媒体服务RESTAPI的Endpoint

    Amber Zhao  Thu, Feb 26 2015 4:09 AM 由于海外Azure和中国Azure有不同的domain,很多用户在使用媒体服务RESTAPI时,需要指定中国Azure媒体服务 ...

  5. Flask框架搭建REST-API服务

    一.目的 为了能够将测试工具部署成RESTful-API服务,这样就能通过接口的方式提供统一测试工具服务,使用人员就不用构建application而产生的各种环境问题.使用问题. 适合人群:Pytho ...

  6. [svc]简单理解什么是rpc调用?跟restapi有何区别?

    什么是rpc调用 restapi调用方式是对数据的crud. 常见的我们写flash写个api,或者借助django drf写个标准的resetapi,一个url可以借助httpget post pu ...

  7. 调用kylin的restAPI接口构建cube

    调用kylin的restAPI接口构建cube 参考:http://kylin.apache.org/docs/howto/howto_build_cube_with_restapi.html 1. ...

  8. geoserver源码学习与扩展——restAPI访问

    产生这篇文章的想法是在前端通过js调用restAPI时,总是不成功,发送ajax请求时还总是出现类似跨域的问题,后来查找才发现,默认情况下restAPI的访问都需要管理员权限,而通过ajax请求传输用 ...

  9. ryu的RESTAPI简介——我主要用于下发和查看流表

    一.Rest API简介 REST即表述性状态传递(RepreSentational State Transfer),是一种针对网络应用的设计和开发方式,可以降低开发的复杂性,提高系统的可伸缩性. 表 ...

随机推荐

  1. 条件随机场(CRF) - 4 - 学习方法和预测算法(维特比算法)

    声明: 1,本篇为个人对<2012.李航.统计学习方法.pdf>的学习总结,不得用作商用,欢迎转载,但请注明出处(即:本帖地址). 2,由于本人在学习初始时有很多数学知识都已忘记,所以为了 ...

  2. codeforces 615A

    题意:给你m个编号为1到m的灯泡:然后n行中每一行的第一个数给出打开灯泡的个数xi 然后是yij是每个灯泡的编号: 题目中有一句话. 我愣是没看,因为我英语真的是一窍不通,看了也白看,直接看数据做的, ...

  3. element-ui-——el-uploadexcel导入

    布局文件:(选择文件放在了弹框内部——即点击导入按钮后弹框显示,先下载模板再选择文件点击提交按钮才上传) )) { this.$notify({ message: '数据导入成功', type: 's ...

  4. 4-1 自动生成spider模板的命令

    scrapy genspider 爬虫名 爬取得网站url例:scrapy genspider jobble2 blog.jobbole.com

  5. openmp的g++并行执行

    #include <omp.h>#include <stdio.h>#include <stdlib.h>void Test(int n) {    for(int ...

  6. 2019-3-8-为何使用-DirectComposition

    title author date CreateTime categories 为何使用 DirectComposition lindexi 2019-3-8 8:56:9 +0800 2018-04 ...

  7. hadoop常用端口及定义方法

    hadoop2.x常用到的组件:HDFS, YARN, HBase, Hive, ZooKeeper: 组件 节点 默认端口 配置 用途说明HDFS DataNode 50010 dfs.datano ...

  8. Nmap基本使用

    Nmap ​ Network Mapper ​ 一款开源免费的网络发现和安全审计工具. 用途 ​ 列举网络主机清单 ​ 监控主机或服务运行状况 ​ 管理服务升级调度 ​ 检测目标主机是否在线 ​ 检测 ...

  9. 学习linux命令,看这篇2w多字的linux命令详解

    用心分享,共同成长 没有什么比每天进步一点点更重要了 本文已收录到我的github:https://github.com/midou-tech/articles/tree/master/docs/li ...

  10. 【题解】PKUWC2018简要题解

    [题解]PKUWC2018简要题解 Minimax 定义结点x的权值为: 1.若x没有子结点,那么它的权值会在输入里给出,保证这类点中每个结点的权值互不相同. 2.若x有子结点,那么它的权值有p的概率 ...