Beetlsql是一款非常強(qiáng)大的數(shù)據(jù)庫訪問工具,這款軟件適用于以SQL為中心,能自動(dòng)生成大量常用的SQL的應(yīng)用。支持Map/List等模型,軟件非常簡單,如果有需要的朋友快來下載試試吧。
軟件特色
開發(fā)效率
1、無需注解,自動(dòng)使用大量內(nèi)置SQL,輕易完成增刪改查功能,節(jié)省50%的開發(fā)工作量;
2、數(shù)據(jù)模型支持Pojo,也支持Map/List這種快速模型,也支持混合模型;
3、SQL模板基于Beetl實(shí)現(xiàn),更容易寫和調(diào)試,以及擴(kuò)展 可以針對(duì)單個(gè)表(或者視圖);
4、代碼生成pojo類和sql模版,甚至是整個(gè)數(shù)據(jù)庫。能減少代碼編寫工作量。
Beetlsql維護(hù)性
1、SQL 以更簡潔的方式,Markdown方式集中管理,同時(shí)方便程序開發(fā)和數(shù)據(jù)庫SQL調(diào)試;
2、可以自動(dòng)將sql文件映射為dao接口類;
3、直觀靈活的支持一對(duì)一,一對(duì)多,多對(duì)多關(guān)系映射而不引入復(fù)雜的OR Mapping概念;
4、具備Interceptor功能,可以調(diào)試,性能診斷SQL,以及擴(kuò)展其他功能。
性能卓越
1、Beetl遠(yuǎn)超過主流java模板引擎性能(引擎性能5-6倍與freemaker,2倍于JSP);
2、宏觀上通過了優(yōu)化的渲染引擎,IO的二進(jìn)制輸出,字節(jié)碼屬性訪問增強(qiáng),微觀上通過一維數(shù)組保存上下文Context,靜態(tài)文本合并處理,重復(fù)使用字節(jié)數(shù)組來防止java頻繁的創(chuàng)建和銷毀數(shù)組,還使用模板緩存,運(yùn)行時(shí)優(yōu)化等方法。
其他特性
1、內(nèi)置支持主從數(shù)據(jù)庫支持的開源工具;
2、支持跨數(shù)據(jù)庫平臺(tái),開發(fā)者所需工作減少到最小,目前跨數(shù)據(jù)庫支持mysql,postgres,oracle,sqlserver,h2,sqllite,DB2。
軟件功能
支持簡單查詢(自動(dòng)生成sql)
1、public T unique(Class clazz,Object pk) 根據(jù)主鍵查詢,如果未找到,拋出異常;
2、public T single(Class clazz,Object pk) 根據(jù)主鍵查詢,如果未找到,返回null;
3、public List all(Class clazz) 查詢出所有結(jié)果集;
4、public List all(Class clazz, int start,int size) 翻頁;
5、public int allCount(Class clazz) 總數(shù)。
支持(Query)單表查詢
1、SQLManager提供Query類可以實(shí)現(xiàn)單表查詢操作;
2、public long templateCount(Class target,Object paras) 獲取符合條件個(gè)數(shù)。
template查詢
1、public List template(T t) 根據(jù)模板查詢,返回所有符合這個(gè)模板的數(shù)據(jù)庫 同上, mapper可以提供額外的映射;
2、public T templateOne(T t) 根據(jù)模板查詢,返回一條結(jié)果,如果沒有找到,返回null;
3、public List template(T tint start,int size) 同上,可以翻頁;
4、public long templateCount(T t) 獲取符合條件的個(gè)數(shù);
5、public List template(Class target,Object paras,long start,long size) 模板查詢,參數(shù)是paras,可以是Map或者普通對(duì)象。
更新日志
Beetlsql v2.8.1更新。
1、增加了可查詢的參數(shù)類型;
2、增加了一些新增對(duì)象的管理功能;
3、解決了一些格式上的已知問題;
4、修復(fù)了一些bug,優(yōu)化了軟件界面;
5、優(yōu)化了軟件性能。