AppBoxFuture: 集成第三方Sql数据库
框架设计之初是不准备支持第三方数据库的,但最近几个朋友都提到需要将旧的基于传统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上的运行时安装测试,然后再决定是否加入赞助者来共同推进这个项目。另一边码代码一边码文实属不易,作者需要您的支持请您多多点赞推荐!
- ShareSDK集成第三方登录和分享的步骤
- 快速集成第三方分享平台
- 集成Mob第三方的短信验证码功能
- InstallShield安装包中集成第三方安装包的方案选择
- 【Android】【编译】Android中集成第三方软件包(.jar, .so)
- 支付宝的集成与使用(第三方)
- 安卓中用AndroidStudio集成第三方支付宝
- Android FrameWork集成第三方SDK的jar包和so库
- IOS项目集成ShareSDK实现第三方登录、分享、关注等功能。
- 常用微信集成(第三方sdk集成套路)-- 微信分享
- WebView的使用和第三方集成分享及图片的三级缓存
- AppBoxFuture(四). 随需而变-Online Schema Change
- 用FME集成第三方工具(无需代码)
- iOS项目集成ShareSDK实现第三方登录、分享、关注等功能。
- iOS 【一行代码集成一款精致的第三方OC日历——WZYCalendar】
- iOS集成友盟第三方登录
- 集成第三方SDK爬坑总结之极光推送和友盟统计
- iOS的应用中集成QQ第三方登录获取相关信息
- android集成第三方微信登录
- Android使用官方API分享内容到QQ和微信(非第三方集成)