访问数据库通用类
㈠ 与java相关的技术有哪些
(类似于RPC) RMI-IIOP: RMI的可移植扩展,可以实现JAVA与CORBA的集成。 JDBC: 用于数据库访问的通用接口。 JTA,JTS: 用于提供事务处理的支持。 JMS: java消息服务。可以连接已有的面向消息的中间件,例如:MQSeries,MSMQ。 Java Servlet: 用来扩展Web服务器功能的网络组件。基于请求/响应机制。 JSP: Java与HTML混合编程,类似于ASP。 JavaIDL: Java对COBRA的实现,允许与其他预言集成。且能让分布式对象利用CORBA提供的全面服务。所以J2EE与CORBA完全兼容。 Java Mail: 平台无关,协议无关地发送邮件。 J2EE连接器架构: 自动管理现有系统和中间件之间的诸多细节。 JAXP: Java操作XML。 JAAS: Java的用户认证支持。 EJB: J2EE中最重要的部分,实现组件式开发的基础。可以在多层的分布式环境中部署的服务器端软件组件。 JNI: (Java Native Interface) 声明Native代码,用C/C++实现它。可以实现: 1、 使用标准JAVA不支持的功能,例如访问Win32API。 2、 重用其他语言编写的库或应用程序。例如大量的C库。 3、 需要用低级语言编程时,例如汇编。 Oracle所实现的C底层代码与Java的无缝集成,就是JNI技术的很好例证。Oracle不单使用Java界面,还支持Java编写的存储过程。 JNDI: 用于访问命令和目录系统。 JNDI为底层命名或目录服务提供统一的API。可支持任何服务器名称,标准服务有:LDAP,NDS,CORBA,LDAP活动目录等。
㈡ jdbc与odbc的区别
JDBC与ODBC的主要区别
一、概念定义
* JDBC:是Java应用程序与数据库之间的连接规范,提供了一个用于访问数据库的通用接口。它支持多种数据库系统,包括关系型数据库和对象关系型数据库。JDBC基于Java技术,能跨平台运行在各种支持Java的系统上。
* ODBC:是一种数据库连接标准,允许应用程序以标准化的方式访问多种数据库系统。ODBC基于C语言设计,具有跨平台特性,但相比JDBC,其支持的数据库类型和跨平台能力可能有限。
二、核心差异
1. 跨平台能力:两者均具备跨平台特性,但JDBC在Java环境中的跨平台性更为优越,而ODBC在基于C语言的系统中表现较好。
2. 支持的数据库类型:JDBC支持多种关系型数据库和对象关系型数据库,而ODBC虽然也能连接多种数据库,但其支持的数据库类型可能没有JDBC广泛。
3. API与库设计:JDBC基于Java,API更为简洁易懂;而ODBC使用C语言设计,对于不熟悉C语言的开发者来说可能相对复杂。
4. 性能和资源占用:在某些场景下,由于JDBC使用Java虚拟机,可能存在资源占用较多的情况,而ODBC在性能上可能更加高效。但这也取决于具体的实现和使用环境。
三、具体细节
JDBC提供了一套全面的接口用于处理大型和复杂的数据处理任务,还支持自动处理错误和优化sql性能。另外,通过JDBC可以使用数据库的存储过程和结果集对象等方法进行数据操作和管理。而ODBC主要是提供了一个数据库访问的中间层,使得应用程序能够使用统一的方式进行数据访问和操作。由于ODBC的设计相对较早,因此在某些新特性和性能优化方面可能不如JDBC。
四、总结
JDBC和ODBC都是用于连接数据库的接口规范或标准,两者的主要区别在于设计基础、支持的数据库类型、API复杂性以及性能和资源占用等方面。选择哪种技术取决于具体的应用场景和开发需求。
㈢ python接入不同类型数据库的通用接口方法
日常数据管理工作中,需要处理存储在不同类型数据库系统的数据。对这些数据的管理,常见的是使用Navicat,DBeaver等管理工具。在对大量数据分析时,需要提取到Python/R中进行处理。下面 探索 Python调用MySQL,MongoDB,InfluxDB等多种类型数据库通用连接方法。实现方式是在Python中封装各类数据库接口包。
实现后的效果:1.安全。接口信息封装便于保密管理;2.复用。一次封装,永久复用;3.上手快。方便不熟悉python和数据调用的同学,只会简单的sql即可使用,省时省力。
下面以MySQL,MongoDB,InfluxDB为例定义接口方法,然后把它们封装成1个通用方法。
mysql_get(sql,db):
mongo_get(sql,db):
influx_get(sql,db):
可以看到,以上函数共同调用的参数为sql和db。我们再增加一个参数db_type,将构造一个通用的方法对以上数据库调用。
同理,其他类型的数据库也可以加入到这个通用框架中,包括但不限于各类关系型,键值型,时序型数据库。