手游服务端框架之自定义orm持久化工具(一)

本文介绍了如何使用ORM简化游戏服务端玩家数据的持久化,通过自定义ORM框架避免手动编写SQL,提高开发效率。文章提到了Cacheable抽象类、AbstractCacheable、DbStatus等关键类的设计,并解释了为何不使用成熟的ORM框架如Mybatis,而是选择自定义简易版。此外,还介绍了SqlFactory和DbUtils等工具类的功能,以及在实际应用中的实现方式。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

前面一篇文章手游服务端框架之关于玩家数据的解决方案,介绍了当今游戏服务端对玩家数据进行持久化的两种方案。一种是将玩家数据通过json等格式统一打包成字符串或二进制流;另一种是根据模块功能垂直拆分,一个模块一张用户表。

今天的主题就是介绍如何通过orm来简化上面所说的第二种持久化方式。

ORM(关系对象映射),简单来说,就是将oop世界里的对象与关系型数据库里的表记录进行映射。如果玩家数据的持久化是根据功能模块来拆分的话,那么随着游戏功能的增多,用户表的数量也会越来越多。如果对于每一张表,都需要编写对应的CRUD sql语句,那开发效率是非常低下的。但使用了orm框架,对于每一个需要进行持久化的玩家数据对象,都不再需要手动编写sql语句,这无疑是非常爽的。

至于为什么不使用Mybatics或者Hibernate这种成熟强大的ORM框架,而是选择自己造轮子设计。这里有个原因,一般游戏业务都是对单表进行增删查改(甚至不用删除),也很少需要对多张表进行联合查询。所以自己手写一套简易的orm工具即可,还可以灵活整合缓存系统。

下面逐步介绍使用的主要类文件

评论 15
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

jforgame

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值