框架设计之初是不准备支持第三方数据库的,但最近几个朋友都提到需要将旧的基于传统Sql数据库的应用迁移到框架内,主要是考虑到一方面目前框架内置的分布式数据库尚未完善,另一方面是希望能逐步迭代旧应用替换传统数据库。因此作者还是决定支持第三方数据库,下面介绍如何集成第三方数据库,并将实体模型映射存储至其中。

一、创建DataStore

  DataStore主要保存数据库的配置(连接)信息,通过IDE主菜单->DataStore->NewDataStore创建,创建后需要设置相应的连接信息(如下图所示),另如果是集群部署必须确保集群每一个节点都能正常连接到数据库。

目前仅实现了Postgresql的支持

二、创建EntityModel

  现在新建EntityModel时必须选择对应的存储源,"Default"是框架内置的数据库,其他名称则是对应的第三方数据库。创建完实体模型后打开设计器,在"Members"面板点击"Add"按钮可添加实体成员(对应数据库表字段),如下图所示:

  根据不同的存储源,实体模型设计器的选项面板会呈现不同的设置选项,Sql数据库可设置主键及索引,如下图所示:

  设置完并"保存"及"发布"后,服务端会自动连接数据库创建相应的表结构。另外DbFirst模式尚未实现,实现后可反向从现有数据库生成实体模型。

三、创建ServiceModel测试ORM

  上述操作完成后创建测试用的服务模型,如下图所示编写两个服务方法,一个简单并发插入实体,一个分页查询数据。

  鼠标定位相应的服务方法后点击"Invoke"按钮可调用服务方法进行测试,简单并发插入实体及简单分页查询的结果分别如下图所示:

服务模型Invoke与Debug的区别:
Invoke需要保存并发布后调用,使用Release选项编译;
Debug不需要保存并发布,使用Debug选项编译,服务端有相应的Debug进程处理调试过程。

演示视频

四、本篇小结

  第三方数据库的支持目前只是搭了个架子,ORM部分的很多功能如更新、导航属性、复杂查询等都未实现,框架的前端工程及后端工程的源码已经迁到gitlab上,暂采用赞助的方式开放,如果您对项目感兴趣可通过下载GitHub上的运行时安装测试,然后再决定是否加入赞助者来共同推进这个项目。另一边码代码一边码文实属不易,作者需要您的支持请您多多点赞推荐!

最新文章

  1. 【Android自学日记】五大布局常用属性
  2. JQM---列车时刻查询
  3. HDU-4869 Turn the pokers
  4. 内部类访问外部类的变量必须是final吗,java静态方法中不能引用非静态变量,静态方法中不能创建内部类的实例
  5. Device Pixel Ratio & Media Queries
  6. 在iptables和selinux中放行smb服务
  7. 2017年的golang、python、php、c++、c、java、Nodejs性能对比[续]
  8. quillJS 富文本编辑器源码分析系列1
  9. Docker & ASP.NET Core (4):容器间的连接
  10. 【前端】js中数组对象根据内容查找符合的第一个对象
  11. CentOS7.X中使用yum安装nginx的方法
  12. git--创建空的分支
  13. 使用fastdfs搭建文件服务器
  14. 20135220谈愈敏Blog2_操作系统是如何工作的
  15. Linux中安装Nginx
  16. 秒杀多线程第二篇 多线程第一次亲密接触 CreateThread与_beginthreadex本质区别(续)
  17. 在input文本框中存入对象格式的数据
  18. 李洪强经典面试题53-Swift
  19. ASP.NET MVC 1.0 哈哈。。转过来,还没学。。
  20. 大话tomcat之tomcat连接mysql

热门文章

  1. Python之路(第四十篇)进程池
  2. Java集合框架个人学习笔记
  3. Mysql数据库(五)表记录的检索
  4. 使用MySQL,SQL_MODE有哪些坑,你知道么?
  5. CMMS系统中的物联监测
  6. python全局变量及局部变量
  7. Apache Tomcat服务部署网站
  8. js基础总结03 --操作数组
  9. IPv6笔记-地址结构与分类
  10. jquery手机端横屏判断方法