安下载编程开发

分类分类

sqltoy(orm框架)

sqltoy(orm框架)

v4.18.13 官方版

大小:11.1 MB 更新:2021/04/20

类别:编程工具系统:WinXP, Win7, Win8, Win10, WinAll

立即下载

  sqltoy是一款orm框架,如果你会使用这种框架就可以直接下载这款软件使用,软件基于Java编辑,满足大部分用户开发需求,让用户可以通过orm框架快速部署数据库相关的功能,提供丰富的SQL查询功能,可以在代码中查询SQL,可以基于表单对象查询sql,可以对查询到的内容编辑,直接在软件编辑新的sql,提供更简单的sql写法,让sql更容易理解,后期调整也比较简单,添加到数据库就可以直接执行,比mybatis编辑的sql要简单得多,写法上也比较清晰,方便后期维护,这款框架比mybatis强大得多,如果你需要Java类型的orm框架就下载吧!

sqltoy(orm框架)

软件功能

  基于java语言开发的一套数据库ORM框架

  同时拥有hibernate对象操作的简洁性、以及比mybatis(或plus)等更强大、更简洁的sql查询

  最为贴切项目实践,提供了绝大多数用户项目过程中的最直接处理问题的方法调用,除了常用的查询和分页外,还提供如:

  1、取随机记录、取top记录(固定数量和按比例)

  2、锁记录修改并返回结果updateFetch

  3、树形表结构递归查询,利用表结构设计实现无关数据库的递归查询

  4、行列互转\无限级的分组汇总平均,极为简单的sql加短短的配置代替:晦涩冗长还自以为很牛的大sql

软件特色

  sqltoy-orm是比hibernate+myBatis更加贴合项目的orm框架(依赖spring),具有jpa式的对象CRUD的同时具有比myBatis(plus)更直观简洁性能强大的查询功能。 支持以下数据库:

  oracle 11g+

  db2 9.5+,建议从10.5 开始

  mysql(mariadb/innosql)支持5.6、5.7、8.0 版本

  postgresql(greenplum) 支持9.5 以及以上版本

  sqlserver 2012+

  sqlite

  DM达梦数据库

  elasticsearch 只支持查询,版本支持5.7+版本,建议使用7.3以上版本

  clickhouse

  dorisdb

  oceanBase

  guassdb

  tidb

  kingbase

  mongodb (只支持查询)

  sybase_iq 支持15.4以上版本,建议使用16版本

官方教程

  1.查询分库分表定义分库分表策略,参见sqltoy-showcase范例下resources/spring/spring-sqltoy-sharding.xml 配置

sqltoy(orm框架)

  查询使用范例,参见sql配置上的sharding-datasource 和sharding-table

sqltoy(orm框架)

  2.对象操作分库分表涉及增加、修改、删除操作的分库需要用到分布式事务管理,

  使用jta进行事务管理

  在对象上进行注解,sharding配置文件参见:src/java/resources/spring-sqltoy-sharding.xml

sqltoy(orm框架)

  进行对象保存操作

sqltoy(orm框架)
sqltoy(orm框架)

  弹性支持

  1.集成背景elasticsearch具有极高的查询效率,十亿级上百个分段的集合查询基本上在0.2秒(pcie存储+占用内存,2017年背景)

  极为适合大规模流水数据查询,某些客户过往交易记录等

  具有极强的横向扩展能力

  一般只用于查询,通过logstash或spark,flink等方式将数据ETL到elastic上

  sqltoy支持es就是利用es的极高的查询效率来纠正关系型数据库大规模查询性能问题,解决当初拉卡拉数据平台日均千万笔(按年存储即30亿以上规模)的交易查询性能(传统关系型数据库各种策略用尽都无法跟es的性能想比)。

  2.配置集成,请参见trunk / sqltoy-showcase / src / java / main / resources / spring / spring-sqltoy.xml

  pom要增加httpclient,elastic-rest-client的依赖

sqltoy(orm框架)
sqltoy(orm框架)

  3.查询编写,使用eql模式,弹性支持sql和json模式,通过mode = sql来区分是否使用sqlsrc / java / main / com / sagframe / sqltoy / showcase目录下的sqltoy-showcase.sql.xml文件

  elastic只支持单集合查询

  缓存翻译,数据旋转等用法跟普通sql一致

sqltoy(orm框架)
sqltoy(orm框架)

  4.java调用,参见测试目录下的ElasticCaseServiceTest,通过sqlToyLazyDao.elastic()调用

sqltoy(orm框架)
sqltoy(orm框架)

常见问题

  1. sqltoy的sql只能写在xml中吗?

  不是的,sql可以直接写在代码中也可以通过@ListSql和@PageSql两个注解完成(但一般很少用注解)。

  sql参数的名字是sqlOrNamedSql表示可以直接是sql也可以是xml中定义的sql id。

  @todo通过sql获取单条记录

  @param sqlOrNamedSql直接代码中写的sql或xml中定义的sql id

  @param paramsNamed

  @param paramsValue

  @param voClass

  @返回

  / 上市 T loadBySql(final String sqlOrNamedSql,final String [] paramsNamed,final Object [] paramsValue,

sqltoy(orm框架)

  2. sqltoy的查询结果只能是VO list吗?

  不是的,所有的查询ClassvoClass这里分1,voClass常规的vo类型; 2,null表示ArrayList; 3,HashMap.class \ LinkedHashMap.class```/ **

  @TODO查询集合

  @param

  @param SQL

  @param paramsNamed

  @param paramsValue

  @param voClass分零(返回二维列表),voClass,HashMap.class,LinkedHashMap.class等

  @返回

  /受保护 列表 findBySql(final String sql,final String [] paramsNamed,final Object [] paramsValue,

sqltoy(orm框架)

  3. sqltoy查询#[]支持嵌入吗?

  sqltoy动态操作#[]是支持嵌套的且是无限层嵌套的,可以#[和t.status =:status#[和t.xxx =:xxx]]

  4. sqltoy-orm可以不用写sql完成crud吗?

  orm的概念其实就是基于对象完成对数据库的操作,sqltoy-orm提供了基于对象的数据库操作,从而休眠了jpa!

  5.如何开始?

  请参照sqltoy-showcase / tools / quickvo先通过数据库产生POJO,然后参照showcase下面/ src / test / java下面的CrudCaseServiceTest!

  6. quickvo支持yml配置文件吗?

  不支持,不用纠结这个转移,quickvo只是一个工具,如果项目使用的是yml则可以给quickvo单独一个属性配置文件,或者直接通过quickvo.xml中的属性来定义,如下

sqltoy(orm框架)

  7. quickvo提示没有匹配到表生成vo

  请检查catalog或schema配置是否正确,且大小写正确正确!oracle,sqlServer,postgresql用schema,mysql \ DB2则需配置:catalog!具体可以了解jdbc的conn.getMetaData()。getTables(catalog,schemaPattern,tablePattern ,types)方法规范

  8.为什么SqlToyLazyDao保存或更新操作数据库未发生改变?

  这个属于事务配置文件,lazyDao应该在服务层调用,服务层上应该配置事务,事务配置可以注解模式,也可以通过aop在方法规则上进行控制,注解配置示例可以参照SqlToyCRUDServiceImpl类

  如果在控制器层调用SqlToyCRUDService并自动完成数据库保存,因为SqlToyCRUDService方法已已经加了事务注释解。

sqltoy(orm框架)

  9.为什么我手写VO和表映射无法执行

  请使用quickvo生成跟数据库的映射关系,sqltoy从来不鼓励手工写跟数据库映射,也没有必要去尝试!

  是不是因为复杂所以不鼓励?不是,是因为从来就没有手工写过,再简单也记不住!

  10.多数据源如何实现事务管理

  请约会Jta进行事务管理,Atomikos + spring Jta,多数据源同时要支持读和写本身就是一个特有的场景,建议可以针对此进行服务化

  参照地址:https ://www.cnblogs.com/wangyong/p/4174326.html

  sqltoy一写多读可以按照常规模式进行配置,无需使用Jta。

更新日志

  版本号4.12.2(GA版本)日期2020.5.21

  1,从表中增加代码中直接写sql查询时自动根据情况补齐

sqltoy(orm框架)

  2,优化quickvo,剔除对log4j的依赖改用jdk自带日志,显着增加jar的大小3,增加三个单表查询,修改,删除方法,更加简化单表操作,方便内部逻辑快捷处理

sqltoy(orm框架)

  用法:

sqltoy(orm框架)

  版本号4.11.9日期2020.5.8

  1,支持保留字处理,对象操作自动增加保留字符号,跨数据库sql自动适应

  首先尽量避免使用保留字

  sqltoy支持保留字处理主要考虑一些已有项目

  2,重新编写修复StringUtil分隔符号切割函数splitExcludeSymMark(在sqltoy简单场景下不干扰)3,增加缓存数据获取为空的日志提醒,,给开发更多信息4,查询返回结果支持List Object [] >,同时支持resultType直接给Map.class等接口(之前必须是HashMap等实现类)5,quickvo支持yml格式的配置文件6,增强sql执行输出

  保留字支持

sqltoy(orm框架)

  注意事项

  保留字分对象操作和自定义sql两个部分,对象操作框架自动完成保留字的处理

  自定义sql中的保留字需要根据当前数据库增加的保留字符号,当作为产品使用不同数据库时框架会自动适应```sql

  -sqlserver从表t中选择t。[maxvalue],t.name-mysql选择t。maxvalue表t中的,t.name

  版本号4.10.5(GA版本) 日期2020.3.31

  * 1.缓存翻译对应的缓存更新增加了增量更新机制

  * 2.增加了环比计算功能,同时优化了unpivot 列转行配置和实现策略

  * 3.部分代码优化

  版本号4.10.3(GA版本) 日期2020.3.17

  * 1.优化ehcache缓存配置策略,设置off-heap默认为零,并提供全局默认值设置

  * 2.优化sql加载顺序策略,classes 下面的sql优先于jar包中的,从而便于程序发版和本地调试

  * 3.修复注解式sql调用参数合规性验证缺陷

精品推荐
同类推荐
相关下载
  • 最新排行
  • 最热排行
  • 评分最高
编程开发排行榜
实时热词