`

bboss持久层数据库适配器编写和注册方法

阅读更多
bboss持久层数据库适配器编写和注册方法
bboss持久层默认提供了以下数据库的适配器:
  • as400
  • db2app
  • db2net
  • cloudscape
  • hypersonic
  • interbase
  • instantdb
  • mssql
  • mysql
  • mariadb
  • oracle
  • postgresql
  • sapdb
  • sybase
  • weblogic
  • axion
  • informix
  • odbc
  • msaccess
  • derby
  • sqlite


随着数据库技术的发展,不断有新的数据库技术出现,因此我们需要针对这些新的数据库实现特定的适配器,本文介绍如何实现具体的适配器,以国内的达梦数据库为示例。

1.编写适配器
所有的适配器都需要继承抽象类:
com.frameworkset.orm.adapter.DB
可以任意扩展实现抽象类中DB的方法,比如生成分页sql的方法,如果不需要则无需覆盖。扩展适配器的分页机制实例:http://yin-bp.iteye.com/blog/1278360
达梦数据库适配器:
package com.frameworkset.orm.adapter;
import java.sql.Connection;
import java.sql.SQLException;

import com.frameworkset.orm.adapter.DB;

public class DBDM extends DB{

	@Override
	public String toUpperCase(String in) {
		// TODO Auto-generated method stub
		return in;
	}

	@Override
	public String getIDMethodType() {
		// TODO Auto-generated method stub
		return NO_ID_METHOD;
	}

	@Override
	public String getIDMethodSQL(Object obj) {
		// TODO Auto-generated method stub
		return "";
	}

	@Override
	public void lockTable(Connection con, String table) throws SQLException {
		// TODO Auto-generated method stub
		
	}

	@Override
	public void unlockTable(Connection con, String table) throws SQLException {
		// TODO Auto-generated method stub
		
	}

	@Override
	public String ignoreCase(String in) {
		// TODO Auto-generated method stub
		return in;
	}

}


2.注册适配器
写好后,在poolman.xml中进行配置注册即可:
<poolman>  
    <adaptor dbtype="dm">com.frameworkset.orm.adapter.DBDM</adaptor> 
     <adaptor dbtype="dm.jdbc.driver.DmDriver">com.frameworkset.orm.adapter.DBDM</adaptor>
....
</poolman>


这里需要注册了两次,一次以dm数据库的驱动程序dm.jdbc.driver.DmDriver进行注册,一个以dm作为别名进行注册,这样便于在编写多数据库sql语句时使用这个别名配置特定数据库的sql语句,bboss持久层配置多数据库语句的文档请参考:
http://yin-bp.iteye.com/blog/1180111

注意:
adaptor 的dbtype属性值可以是一个别名,或者直接是对应数据库的驱动包路径,例如:oracle.jdbc.driver.OracleDriver
上面也用达梦数据库的驱动dm.jdbc.driver.DmDriver注册了我们自己写的达梦数据库适配器,同时也用一个简写的别名dm注册了达梦数据库适配器。
默认的dbtype别名有:
  • as400
  • db2app
  • db2net
  • cloudscape
  • hypersonic
  • interbase
  • instantdb
  • mssql
  • mysql
  • mariadb
  • oracle
  • postgresql
  • sapdb
  • sybase
  • weblogic
  • axion
  • informix
  • odbc
  • msaccess
  • derby
  • sqlite


如果dbtype使用的别名与默认别名重复,则将覆盖默认的数据库适配器,如果不想,则需要指定其他的别名,比如下面的dbtype="myoracle",这样我们要引用这个适配器的话,需要在datasource中明确指定这个别名:
<datasource>
       ...........
   <dbtype>myoracle</dbtype>
..............
</datasource>


如果数据源指定了dbtype,则bboss持久层加载数据源会通过对于的dbtype检索注册的数据库适配器,否则会通过数据库驱动包路径检索对应的数据库适配器。
分享到:
评论

相关推荐

    由 bboss 开源的数据采集&流批一体化工具,提供数据采集、数据清洗转换处理和数据入库以及数据指标统计计算流批一体化处理功能

    bboss-datatran 支持多种数据源的接入,如关系型数据库(MySQL、Oracle等)、NoSQL数据库(HBase、MongoDB等)、消息队列(Kafka、RabbitMQ等)以及文件系统(HDFS、FTP等)。通过内置的适配器,用户可以方便地将...

    bboss 插件工程,持久层hibernate/hibernate4插件

    bboss-plugins project.包含kafka、log4j、spring、dubbo、activemq、word转pdf、pdf转swf项目,持久层hibernate/hibernate4插件

    基于Java的bboss插件集设计源码,涵盖文档转换及持久层技术

    该项目为bboss插件集的Java设计源码,总计277个文件,涵盖163个Java源文件、22个XML配置文件、14个Gradle构建脚本、13个Git忽略规则、13个属性文件以及少量的JavaScript、HTML、CSS和Shell脚本,主要用于文档转换和...

    bboss mvcdemo 下载地址

    - 安装与配置指南:如何下载和设置BBoss MVCDemo环境,包括JDK、应用服务器(如Tomcat)、数据库等的配置。 - 快速入门:简单的示例展示如何创建第一个BBoss MVCDemo应用,包括编写控制器、模型和视图。 - 请求处理...

    bboss-db-elasticsearch-tool-master_java_

    1. **事务管理**:支持数据库的ACID(原子性、一致性、隔离性、持久性)特性,确保数据的一致性和完整性。 2. **缓存机制**:提供缓存策略,减少对数据库的直接访问,提高性能。 3. **批量操作**:支持数据的批量...

    企业级J2EE开源框架bboss

    2. **数据库操作**:BBoss提供了便捷的数据访问层(DAO),支持SQL动态生成、事务管理以及多种数据库的兼容性,使得数据库操作变得简单且高效。 3. **服务治理**:框架内置了服务注册与发现机制,可以实现微服务...

    bboss elasticsearch-5.7.8.rar

    3. `bboss-util-5.5.0.jar`和`bboss-persistent-5.5.0.jar`:这是BBoss框架的核心组件,提供了许多实用工具类和持久化操作支持,如数据库连接、事务管理等,为Elasticsearch的数据导入提供底层支持。 4. `...

    基于bboss新版平台项目环境搭建和代码工具使用视频教程.rar

    "基于bboss新版平台项目环境搭建和代码工具使用视频教程"提供了一套详细的指导,旨在帮助开发者快速掌握bboss新版本平台的相关操作。bboss,全称为Business Basic Open Source,是一个开源的企业级开发框架,它为...

    bboss会话共享培训文档

    bboss会话共享是一种分布式会话管理技术,它针对在集群环境下应用部署时如何解决会话数据丢失和单点登录问题提供了专门的解决方案。根据提供的文档内容,我们可以详细探讨bboss会话共享涉及的关键知识点。 首先,...

    bboss persistent 1.0.2中方便地实现大字段(clob,blob)的处理

    BBoss Persistent是一个轻量级的持久层框架,它提供了方便的方式来处理这些大字段。本文将深入探讨在BBoss Persistent 1.0.2中如何高效地管理CLOB和BLOB数据。 首先,CLOB用于存储大量的文本数据,如长篇文章或XML...

    bboss-elasticsearch开发环境搭建和开发入门视频教程.

    **Elasticsearch 开发环境搭建与 BBoss 入门教程** ...通过提供的视频教程和源码示例,你可以逐步学习到环境配置、基本操作以及一些进阶技能,从而在实际项目中更有效地利用 Elasticsearch 和 BBoss。

    springboot整合bboss es增删改查测试demo代码

    本实例是一个基于bboss es spring boot starter的demo maven工程,可供spring boot项目集成bboss elasticsearch rest client参考 展示了通过spring boot管理单集群功能和管理多集群功能 单集群测试用例:...

    bboss+es基本操作示例.zip

    集成bboss和Elasticsearch时,首先需要在项目中引入bboss的依赖,并配置Elasticsearch的相关连接信息,如集群名称、节点地址等。然后可以通过bboss提供的API进行索引创建、数据插入、查询、更新、删除等操作。 4. ...

    bboss 安全认证过滤器功能介绍

    BBoss安全认证过滤器是Java Web开发中一种用于实现用户身份验证和权限控制的重要组件。在Web应用程序中,过滤器(Filter)是Servlet规范的一部分,它允许开发者在请求到达目标Servlet或JSP之前进行预处理,以及在...

    springboot集成ElasticsearchBboss调用Elasticsearch.md

    springboot集成ElasticsearchBboss调用Elasticsearch的案例分享

    bboss+easyui帮助文档比较详细

    BBoss和EasyUI是两个在IT领域中常用于构建企业级Web应用的开源框架。BBoss,全称为“Business Basic Operation Support”,是一个基于Java的企业级开发框架,它提供了丰富的组件和工具,使得开发者能够快速地进行...

    bboss ioc配置文件中使用外部属性文件介绍

    本文将详细介绍如何在BBoss的IOC配置文件中引用外部属性文件,以便更好地管理和动态配置应用。 首先,BBoss的IOC配置文件通常是一个XML文件,比如`bboss-ioc.xml`,在这个文件中我们可以声明并配置各种bean。当需要...

    J2EE企业级开源框架bboss v5.0.6.8

    bboss功能涵盖ioc,mvc,jsp自定义标签库,持久层,全局事务托管,安全认证,SSO,web会话共享,cxfwebservice服务发布和管理,hessian服务发布和管理等功能。另外还提供了符合中国式自由流的bboss activiti工作流...

Global site tag (gtag.js) - Google Analytics