返回首页
LegendDao已经实现在码云上开源啦
发表时间:2019-12-20 阅读:2143
新零售系统
云商城系统
电商平台
LegendDao实现了JPA的基本接口 , 是spring jdbcTemplate增强工具包, 只做增强不做改变,简化CRUD操作 。

简介 | Intro

LegendDao实现了JPA的基本接口 , 是spring jdbcTemplate增强工具包, 只做增强不做改变,简化CRUD操作 。

持久层框架LegendDao是一个基于Java和Spring 的jdbcTemplate的持久层框架。支持类似Hibernate方式的单表映射功能和采用SQL方式来处理多表关联的查询和插入删除更新等功能,消除了大部分的JDBC代码和参数的手工设置以及结果集的检索。由于使用了jdbctemplate, 事务天然是采用是采用Spring自带的事务。

每个数据库连接都对应一个entityFactory,包括对jdbcTemplate的引用和数据库方言dialect的引用,方言支持MySQL,Oracle等数据库。LegendDao最强大的特性之一就是它的动态语句功能,在后台列表中往往需要根据不同的条件来筛选数据,普通的SQL需要大量的if else去组装SQL,legendDao提供一个Map来动态组装出不同的数据,而且支持运行时动态改变SQL。同时LegendDao支持采用反射和字节码增强的方式来由ResultSet来组装最后要的实体类。

优点 | Advantages

  1. 无侵入,操作方便 : LegendDao实现了JPA的基本接口,底层实现是用spring jdbcTemplate实现天然跟spring集成到一起;
  2. 依赖少 :仅仅依赖 spring 事务包和spring jdbc等spring核心包;
  3. 损耗小:启动即会自动注入基本CURD,性能基本无损耗,直接面向对象操作;
  4. 通用CRUD操作 : 实现Hibernate/JPA方式的CRUD,支持JPA方式的注解方式,仅仅通过少量配置即可实现单表大部分 CRUD 操作;
  5. 多种主键策略:支持多达4种主键策略(内含分布式唯一ID生成器Table Sequence),可自由配置,完美解决主键问题;
  6. 支持代码生成:采用代码可快速生成 Dao、 Model 、 Service 、 Controller 层代码,支持模板引擎;
  7. 内置分页插件: 支持MySQL、Oracle、SQL Server等数据库;
  8. 支持动态SQL: 可以把SQL定义到XML文件中,通过有限状态机模式把最终的sql解析出来。
  9. 支持系统一级缓存: 一级缓存是采用在事务级别实现的,也可以接入外部二级缓存。
  10. 支持数据库读写分离: 可以设置多个数据源并实现读写分离。

关键接口

LegendDao封装了基本的JPA接口,但是基本接口不满足需求的情况下,也可以直接使用spring的jdbcTemplate来操作。


接口 说明
Dao 通用Dao接口.
CrudDao 增删查改基本Dao接口.
GenericDao 封装了通用的分页接口
GenericJdbcDao 采用jdbcTempate封装Jdbc的操作


体系架构

我们把LegendDao的功能架构分为三层,如下图:


在这里插入图片描述

1. API接口层

提供给外部使用的接口API,开发人员通过这些本地API来操纵数据库。接口层一接收到调用请求就会调用数据处理层来完成具体的数据处理。支持类似Hibernate的增删改查的和采用JDBC方式的多表查询。

2.数据处理层

负责具体的SQL查找、SQL组装、SQL执行和执行结果映射处理等。它主要的目的是根据调用的请求完成一次数据库操作。

3. 基础支撑层

基础层使用Spring的jdbcTemplate来实现。

期望 | Futures

欢迎提出更好的意见,帮助完善 LegendDao

版权 | License

Apache License 2.0

文章来源:https://gitee.com/legendshop/legendDao
【朗尊软件】是中国领先的专业电商平台提供商,秉承着“专业塑造传奇,用心成就电商”的理念, 专注于为用户提供一体化的电商解决方案及服务,搭建垂直行业垂直电商一站式营销管理工具。目前拥有自主研发的电子商务平台产品:SAAS云平台、微商城小程序、云商城、云小店、代理商平台、B2B2C商城、B2B大宗交易平台、跨境电商服务、大数据平台搭建、微服务架构等产品、各种定制商城及解决方案。
网站声明:以上内容为朗尊软件官方网站的原创文章,如需转载,请注明出处,谢谢合作!
上一篇: 社区新零售系统的开发分享
下一篇: 习大大亲自下场指导,区块链拨开云雾
相关文章
面向服务架构和微服务架构的区别 - 朗尊软件,企业级电商平台提供商
Legendshop商城系统第三方功能介绍 - 朗尊软件,企业级电商平台提供商
电商直播系统有哪些开发模式?
开源商城系统介绍企业写开源多用户商城 - 朗尊软件,企业级电商平台提供商
供应链金融浅析 - 朗尊软件,企业级电商平台提供商
电商头条新闻
1
工业行业 | 工业产品B2B跨境电商解决方案
2
私域电商如何赶上智能热潮?
3
三一全球购 | B2B2C电商平台+员工福利平台的定制解决方案
4
跨境电商 | B2B2C跨境电商系统解决方案
5
社群团购系统——社区流量与社交电商融合
热门标签
小羊直播
供应链
电商系统
Java商城
电商平台
B2B商城
跨境电商
商城平台
新零售系统
云商城系统
B2B2C商城系统
多用户商城
微服务商城
供应链商城
商城系统
电商直播系统
私域电商
大宗交易平台
数字化转型
直播供应链
全渠道零售
O2O商城系统
java开源商城
SAAS云平台
B2C商城系统
SaaS系统
生鲜电商
用户标签
APP
S2B
MRO平台
微信小程序商城
移动商城
社区电商
营销活动
新零售电商
分销系统
门店管理
分销体系
社交电商
直播电商
数字化
客服系统
社群电商
引爆流量
供应链金融
员工福利平台
工会福利商城
企业智慧采购平台
机械设备
抖音电商
数智化
数字化
区块链
S2B2C
B2B2B
订单融资
数字中台
VUE
用户标签
仓单融资
大数据
应收账款
集采代采
医药电商
推荐阅读
公告:【微信小程序备案】9月1日起,微信小程序需完成备案才可上架!
工业行业 | 工业产品B2B跨境电商解决方案
私域电商如何赶上智能热潮?
三一全球购 | B2B2C电商平台+员工福利平台的定制解决方案
家居行业的S2B2C商城平台解决方案