bbossgroups持久层sql配置文件多数据库sql语句配置机制
bbossgroups持久层sql配置文件支持同一个配置名称对应不同数据库sql语句的配置机制,具体的原理如下:
1.多数据库sql语句配置机制
可以通过名称属性name配置默认sql,特定数据库的sql通过在
名称后面加数据库类型后缀来区分,例如:
sqltest
sqltest-oracle
sqltest-derby
sqltest-mysql
bboss持久层支持的数据库类型有:
- as400
- db2app
- db2net
- cloudscape
- hypersonic
- interbase
- instantdb
- mssql
- mysql
- mariadb
- oracle
- postgresql
- sapdb
- sybase
- weblogic
- axion
- informix
- odbc
- msaccess
- derby
2.ConfigSQLExecutor执行数据库操作时,根据指定的数据源类型获取特定数据库sql语句机制
我们以例子来说明这个机制,首先看一个sql配置文件示例:
<?xml version="1.0" encoding='gb2312'?>
<properties>
<!--默认sql语句-->
<property name="sqltest"><![CDATA[select name from LISTBEAN where id=1]]>
</property>
<!--mysql sql语句-->
<property name="sqltest-mysql"><![CDATA[select ifnull(name,'匿名用户') from LISTBEAN where id=1]]>
</property>
<!--oracle sql语句-->
<property name="sqltest-oracle"><![CDATA[select nvl(name,'匿名用户') from LISTBEAN where id=1]]>
</property>
</properties>
我们配置了名称为sqltest的三条sql语句,一条默认的sql语句,一条对应于mysql数据库,使用了mysql的ifnull函数,一条对应于oracle数据库,使用了oracle的nvl函数,然后根据配置文件内容实例化一个ConfigSQLExecutor对象,并根据sqltest做相应的查询操作:
ConfigSQLExecutor executor = new ConfigSQLExecutor("com/frameworkset/sqlexecutor/sqlfile.xml");
Map dbBeans = executor.queryObjectWithDBName(HashMap.class,"ds", "sqltest");
我们在poolman.xml文件中配置了一个名称为ds的mysql数据源:
<datasource>
<dbname>ds</dbname>
<loadmetadata>false</loadmetadata>
<jndiName>jdbc/mysql-ds</jndiName>
<driver>com.mysql.jdbc.Driver</driver>
<url>jdbc:mysql://localhost:3306/cim</url>
<username>root</username>
<password>123456</password>
。。。。。。
</datasource>
这样持久层框架在执行executor.queryObjectWithDBName(HashMap.class,"ds", "sqltest"); 查询操作时,会自动识别出数据源ds是一个mysql数据源,然后就会执行sqltest-mysql对应的sql语句,如果是oracle数据源则会执行sqltest-oracle对应的sql语句,其他类型数据库就会执行默认的sqltest对应的sql语句。
到此bbossgroups持久层sql配置文件多数据库sql语句配置和具体实现原理就介绍完毕了,如有疑问请留言讨论。
分享到:
相关推荐
数据库访问组件和SQL语句配置文件是数据层的关键。bbossgroups提供了一套便捷的数据访问组件,允许开发者方便地操作数据库。在配置文件中,可以设定数据库连接池、事务管理等,以实现高效的数据库操作。 DAO组件...
在Java开发中,bbossgroups 3.1框架提供了一个名为...通过灵活的SQL构建和结果处理机制,它能够适应各种复杂的数据库应用场景。在实际开发中,掌握SQLExecutor的使用对于优化数据库操作和提升系统性能具有重要意义。
持久层框架进一步完善,支持ORMapping和多数据库解决方案;AOP/IoC框架整合多种技术,如Quartz、JMS、WebService等;分布式事件管理框架逐步完善。 4. **2011年**:标签库与MVC框架融合,持久层API改进,增加了SQL...
6. **持久层框架**:Bboss提供了持久层框架,简化了数据库操作,支持SQL动态生成和ORM映射,与各种主流数据库如MySQL、Oracle等良好兼容。 7. **分布式事件框架**:通过JGroups、Minetty、RMI、HTTP、JMS、...
### bbossgroups 3.0 发布,国内首款集成多技术的企业级J2EE开发框架 #### 概述 近日,bbossgroups 3.0 正式发布,这款国内首款集AOP(面向切面编程)、MVC(模型-视图-控制器)、Persistent(持久化)、JSP ...
1. **安装与配置**:如何下载并安装bbossgroups 3.0,以及配置相关的环境变量和启动参数。 2. **基本概念**:了解bbossgroups中的关键组件,如消息代理、消费者、生产者等,以及它们之间的交互方式。 3. **开发...
该框架包含222个文件,包括164个Java源文件、14个XML配置文件、6个Gradle构建文件、6个JAR包文件、6个属性文件等,旨在支持跨域应用集群节点的会话共享与监控,并提供示例站点http://session.bbossgroups.com/...
2. **数据库操作**:BBoss提供了便捷的数据访问层(DAO),支持SQL动态生成、事务管理以及多种数据库的兼容性,使得数据库操作变得简单且高效。 3. **服务治理**:框架内置了服务注册与发现机制,可以实现微服务...
提供的压缩包文件"bbossgroups 框架培训教程.pptx"和"Bbossgroups演示文档.pptx"可能包含了更多关于bboss mvc框架的详细信息和使用示例,包括如何配置和使用JSONP等特性。建议查阅这些文档以获取更深入的理解。 总...
12. bboss:bbossgroups是首个集成AOP、MVC、持久层、JSP标签库、分布式RPC服务和序列化组件的JavaEE企业级开发框架。 13. BeeFramework:BeeFramework是iOS平台的快速开发框架,特点包括易学易用、组件丰富,提供...
它运行并访问像mybatis这样的elasticsearch来关联数据库。环境要求JDK要求:JDK 1.7+ Elasticsearch版本要求:1.X,2.X,5.X,6.X,7.x,+ Spring Booter 1.x,2.x,+从源代码构建首先从获取源代码然后转到目录...
java版地图源码弹性搜索Bboss Bboss 是一个很好的 elasticsearch Java rest 客户端。 它以类似于mybatis的方式操作和访问elasticsearch。 环保要求 JDK 要求:JDK 1.7+ Elasticsearch ...>com.bbossgroups.p