1) gitee的issues提问不会主动通知作者,所以提问的时候需要@我,因为我打理了别的开源,如果没有@,可能我就漏掉了
2) 请在这里回帖你的公司,前提是你的公司或者开源必须使用BeetlSQL,如果不方便登记公司,可以使用xxx+项目名称方式。
BeetlSQL需要你的支持
如果都不方便说,可以说一下项目多少个表,多少个子系统,或者多少用户。
这些名单会最终放到官网或者BeetlSQL介绍文档里
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。
广东越洋科技有限公司
广东越洋科技有限公司
@linziguan 多谢
新疆云乐汇科技有限公司
思客云(北京)软件技术有限公司
问镜科技,我现在公司用的,5个项目 数据库是mysql 和 clickhouse
北京天晟通科技有限公司(beetl3+beetlsql2)
数据分析业务中台
方景科技,华软科技,小豆科技 都在使用Beetl
数据库mysql,1个子系统
达梦数据库、人大金仓数据库、mysql、oracle数据库,业务中台、技术中台,30个子应用。
数据库mysql,1个子系统
@Globaldream 多谢
佳都新太科技股份有限公司
容器化配置风险检查系统、租房管理系统(毕业设计)
我们公司ERP系统(包括收银系统,报表系统,订货系统,运营系统等)在使用,用户数2000左右
mysql,druid,spring-boot 微服务应用,目前公司ERP系统,用户量接近1000
3.17.1-RELEASE,引入Starter整合的,因为需要去现场部署,有可能不同公司用的数据库不一样,目前支持了SQL Server以及Oracle,项目目前有100出头的表,读写分离,用户量大概100-2000不等
多谢
大佬,请问SQL Server支持指定架构(模式)么,具体我在issues里有提
sql server 不太熟悉,beetlsql3提供的dbStyle都是网友提供的他们验证通过的
感谢大佬,问题解决啦,我debug看了是Druid的BUG,最新版本已经解决了,升级到最新版本就好了
@闲.大赋(李家智) 四川四凯软件 多个系统使用Beetl3。
另外请教老师一个问题:正在思考一个类似OA中的动态表单功能,数据存储采用一个表单对应一个独立数据表的方式,因为表结构是动态维护,所以不方便在程序中写固定实体类,请教一下基于BeetlSQL有好的实现方案与建议吗?
@lfl 建议专门开一个issues来提问,这里不适合展开说,我只能先说个大概
1) 不知道你动态表怎么设计,按照我的经验,table仍然建议是固定的,比如table是一个通用table设计,类似 genenral_obj 只包含5列,id,attrname,attrtype,attrvalue,classType,这种不知道能不能覆盖你动态表单想法。如果是这样,那么可以使用beetlsql的功能,只操作genenral_obj
2)如果你坚持table是动态创建的,我仍然建议有动态的java类创建出来,对应这些动态的表格。这些类都基于某个基类
public class Base {
long id;
public void setValue(String name,Object value){/*通过反射赋值到真正的子类字段*/}
}
@Table(name="xxxxTable") /*根据数据库表创建动态类*/
public class XXXAutoGenreated extends Base{
}
你的应用中,如果你想动态操作某个表,类似这样
Class c = AsmUtil.classInstance("xxxxTable");
Base base = sqlManager.unique(c,1);
base.setvalue("attt1",1);
base.setvalue("attt2",true);
sqlManager.update(base)
AsmUtil用于动态创建了类,根据输入的表名创建(或者从已经缓存的)Java类。 这需要有java字节码知识。 Beetlsql代码生成就是根据数据库有表生成Java entity,不过没有编译到虚拟机了
3) 最简单的方式,beetlsql支持jdbc sql,所以你就只写sql就行了,比如
SQLReady sqlready = new SQLReady("yoursql",new object[]{para1,para2});
List<Map> list = sqlmanger.execute(sqlready,Map.class)
//update,insert也类似,你需要自己拼接sql
这里可以用Map,也可以自己写一个类似Map的,比如叫Record(继承map)
@lfl ,我完成一个版本,针对我的建议(2),查看这个看看你能不能使用,你或者可以克隆源码,运行TestDynamic单元测试看看
登录 后才可以发表评论